<?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>180499</bug_id>
          
          <creation_ts>2017-12-06 13:38:19 -0800</creation_ts>
          <short_desc>[WebCrypto] Avoid promises being destroyed in secondary threads</short_desc>
          <delta_ts>2018-07-13 13:32:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=180501</see_also>
          <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="Matt Lewis">jlewis3</reporter>
          <assigned_to name="Jiewen Tan">jiewen_tan</assigned_to>
          <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1378772</commentid>
    <comment_count>0</comment_count>
      <attachid>328616</attachid>
    <who name="Matt Lewis">jlewis3</who>
    <bug_when>2017-12-06 13:38:19 -0800</bug_when>
    <thetext>Created attachment 328616
Crash Log

This assertion is being seen with the test imported/w3c/web-platform-tests/WebIDL/current-realm.html however in the crash log it is blaming CRASHING TEST: imported/w3c/css/css-color-3/t425-hsla-values-b-expected.html
This is an expected file and the associated test is imported/w3c/css/css-color-3/t425-hsla-values-b.xht however this seems like the wrong test is being blamed in the crash.

https://build.webkit.org/results/Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/r225574%20(1134)/results.html

https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=imported%2Fw3c%2Fweb-platform-tests%2FWebIDL%2Fcurrent-realm.html


stderr:

ASSERTION FAILED: m_workerGlobalScope-&gt;hasOneRef()
/Volumes/Data/slave/highsierra-debug/build/Source/WebCore/workers/WorkerThread.cpp(211) : void WebCore::WorkerThread::workerThread()
1   0x71f7743ed WTFCrash
2   0x71319aab6 WebCore::WorkerThread::workerThread()
3   0x7131a6a48 WebCore::WorkerThread::start(WTF::Function&lt;void (WTF::String const&amp;)&gt;&amp;&amp;)::$_12::operator()() const
4   0x7131a6a09 WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebCore::WorkerThread::start(WTF::Function&lt;void (WTF::String const&amp;)&gt;&amp;&amp;)::$_12&gt;::call()
5   0x71f78d2fb WTF::Function&lt;void ()&gt;::operator()() const
6   0x71f7ffebf WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*)
7   0x71f805675 WTF::wtfThreadEntryPoint(void*)
8   0x7fff70e8b6c1 _pthread_body
9   0x7fff70e8b56d _pthread_body
10  0x7fff70e8ac5d thread_start
LEAK: 2 WebPageProxy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378774</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-06 13:40:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/35890680&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378825</commentid>
    <comment_count>2</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-06 14:33:18 -0800</bug_when>
    <thetext>The test before the crashing one is imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.worker.html which does crypto functions in a worker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1378833</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-06 14:50:47 -0800</bug_when>
    <thetext>Looking at CryptoKeyRSA::generatePair, it does the following:
- ref the ScriptExecutionContext in a thread T1
- dispatch to a thread T2
- execute a task in T2
- go back to the original thread T1
- unref the ScriptExecutionContext.

I do not believe this works in practice since T1 may be stopped when executing T2 task.
Refing the context will not help going back to T1 in that case.
This is probably why we are hitting that assertion.

Also, since we might not be able to go back to T1, we should not ref anything in the callbacks otherwise, they might be destroyed in the wrong thread.

For instance, SubtleCrypto::generateKey callbacks are capturing promises.
It might be better to keep a ref of the promise in SubtleCrypto and keep a weak ref to it. Then you can probably get SubtleCrypto from the ScriptExecutionContext on the way back.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1381369</commentid>
    <comment_count>4</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-12-13 16:32:13 -0800</bug_when>
    <thetext>(In reply to youenn fablet from comment #3)
&gt; Looking at CryptoKeyRSA::generatePair, it does the following:
&gt; - ref the ScriptExecutionContext in a thread T1
&gt; - dispatch to a thread T2
&gt; - execute a task in T2
&gt; - go back to the original thread T1
&gt; - unref the ScriptExecutionContext.
&gt; 
&gt; I do not believe this works in practice since T1 may be stopped when
&gt; executing T2 task.
&gt; Refing the context will not help going back to T1 in that case.
&gt; This is probably why we are hitting that assertion.
&gt; 
&gt; Also, since we might not be able to go back to T1, we should not ref
&gt; anything in the callbacks otherwise, they might be destroyed in the wrong
&gt; thread.
&gt; 
&gt; For instance, SubtleCrypto::generateKey callbacks are capturing promises.
&gt; It might be better to keep a ref of the promise in SubtleCrypto and keep a
&gt; weak ref to it. Then you can probably get SubtleCrypto from the
&gt; ScriptExecutionContext on the way back.

I agreed that this might be the problem. However, I am not sure if it is a good idea to keep a strong ref of the promise within SubtleCrypto. SubtleCrypto is a global object that ties with DOMWindow and WokerGlobalScope. For that solution, we might need a map in SubtleCrypto that holds a bunch of Promises and then somehow can deallocate each when an identifier is passed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1381379</commentid>
    <comment_count>5</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-13 16:41:04 -0800</bug_when>
    <thetext>&gt; For that solution, we might need a map in SubtleCrypto
&gt; that holds a bunch of Promises and then somehow can deallocate each when an
&gt; identifier is passed.

Sure, see ServiceWorkerClients and ServiceWorkerContainers as examples of this pattern.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1381382</commentid>
    <comment_count>6</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-12-13 16:42:53 -0800</bug_when>
    <thetext>(In reply to youenn fablet from comment #5)
&gt; &gt; For that solution, we might need a map in SubtleCrypto
&gt; &gt; that holds a bunch of Promises and then somehow can deallocate each when an
&gt; &gt; identifier is passed.
&gt; 
&gt; Sure, see ServiceWorkerClients and ServiceWorkerContainers as examples of
&gt; this pattern.

That&apos;s cool!!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384846</commentid>
    <comment_count>7</comment_count>
      <attachid>330228</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-12-27 21:24:43 -0800</bug_when>
    <thetext>Created attachment 330228
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384863</commentid>
    <comment_count>8</comment_count>
      <attachid>330228</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-28 08:13:39 -0800</bug_when>
    <thetext>Comment on attachment 330228
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        promises are destroyed in secondary threads.

Change looks good to me.
There might be more changes needed to fix the assertion failure.
Maybe this patch should have a more specific name?

&gt; Source/WebCore/crypto/SubtleCrypto.cpp:511
&gt; +std::optional&lt;Ref&lt;DeferredPromise&gt;&gt; getPromise(DeferredPromise* index, WeakPtr&lt;SubtleCrypto&gt; subtleCryptoWeakPointer)

How about using RefPtr&lt;DeferredPromise&gt;?
We would then use releaseNonNull() after a null check to get back a Ref&lt;DeferredPromise&gt;.

&gt; Source/WebCore/crypto/SubtleCrypto.cpp:553
&gt;      };

In the future, it might be good to unify these failure/success callbacks in a unique lambda, for instance by taking a ExceptionOr&lt;SomeResult&gt;.

&gt; Source/WebCore/crypto/SubtleCrypto.cpp:798
&gt; +    auto callback = [index, subtleCryptoWeakPointer, importAlgorithm, importParams = WTFMove(importParams), extractable, keyUsagesBitmap](const Vector&lt;uint8_t&gt;&amp; derivedKey) mutable {

I wonder whether importParams (or some other parameters of this callback and also other callbacks) should be isolatedCopy() or not.
If so, might be good to do that in a future refactoring.

&gt; Source/WebCore/crypto/SubtleCrypto.h:79
&gt;      SubtleCrypto(ScriptExecutionContext&amp;);

Use explicit.

&gt; Source/WebCore/crypto/SubtleCrypto.h:84
&gt; +    HashMap&lt;DeferredPromise*, Ref&lt;DeferredPromise&gt;&gt; m_pendingPromises;

We might want to clear m_pendingPromises whenever it is no longer allowed to execute JavaScript.
One way of doing so is to make SubtleCryto an ActiveDOMObject and clear m_pendingPromises in the stop method.
We might also want to implement hasPendingActivity by checking whether m_pendingPromises is empty.

&gt; Source/WebCore/crypto/SubtleCrypto.h:85
&gt; +    WeakPtrFactory&lt;SubtleCrypto&gt; m_weakPtrFactory;

The alternative to the weak map would have been to get the SubtleCrypto from Crypto which we would get from ScriptExecutionContext.
Current approach looks good given callbacks do not have an easy way to get a ScriptExecutionContext as parameter without further refactoring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384996</commentid>
    <comment_count>9</comment_count>
      <attachid>330228</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-12-30 22:01:49 -0800</bug_when>
    <thetext>Comment on attachment 330228
Patch

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

Thanks Youenn for r+ my patch.

&gt;&gt; Source/WebCore/ChangeLog:11
&gt;&gt; +        promises are destroyed in secondary threads.
&gt; 
&gt; Change looks good to me.
&gt; There might be more changes needed to fix the assertion failure.
&gt; Maybe this patch should have a more specific name?

Certainly, how about &quot;[WebCrypto] Avoid promises being destroyed in secondary threads&quot;?

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.cpp:511
&gt;&gt; +std::optional&lt;Ref&lt;DeferredPromise&gt;&gt; getPromise(DeferredPromise* index, WeakPtr&lt;SubtleCrypto&gt; subtleCryptoWeakPointer)
&gt; 
&gt; How about using RefPtr&lt;DeferredPromise&gt;?
&gt; We would then use releaseNonNull() after a null check to get back a Ref&lt;DeferredPromise&gt;.

Sounds good.

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.cpp:553
&gt;&gt;      };
&gt; 
&gt; In the future, it might be good to unify these failure/success callbacks in a unique lambda, for instance by taking a ExceptionOr&lt;SomeResult&gt;.

I kind of thinking of doing this when making this patch. However, it was not quite obvious for me at a very first glance. Sure, it will be a nice improvement.

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.cpp:798
&gt;&gt; +    auto callback = [index, subtleCryptoWeakPointer, importAlgorithm, importParams = WTFMove(importParams), extractable, keyUsagesBitmap](const Vector&lt;uint8_t&gt;&amp; derivedKey) mutable {
&gt; 
&gt; I wonder whether importParams (or some other parameters of this callback and also other callbacks) should be isolatedCopy() or not.
&gt; If so, might be good to do that in a future refactoring.

What&apos;s the benefits of making them isolated copies? They are certainly not at this moment.

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.h:79
&gt;&gt;      SubtleCrypto(ScriptExecutionContext&amp;);
&gt; 
&gt; Use explicit.

Fixed.

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.h:84
&gt;&gt; +    HashMap&lt;DeferredPromise*, Ref&lt;DeferredPromise&gt;&gt; m_pendingPromises;
&gt; 
&gt; We might want to clear m_pendingPromises whenever it is no longer allowed to execute JavaScript.
&gt; One way of doing so is to make SubtleCryto an ActiveDOMObject and clear m_pendingPromises in the stop method.
&gt; We might also want to implement hasPendingActivity by checking whether m_pendingPromises is empty.

I am not quite sure what ActiveDOMObject is. Could you illustrate a bit for me? I might need that for the CredentialManagement API as well.

&gt;&gt; Source/WebCore/crypto/SubtleCrypto.h:85
&gt;&gt; +    WeakPtrFactory&lt;SubtleCrypto&gt; m_weakPtrFactory;
&gt; 
&gt; The alternative to the weak map would have been to get the SubtleCrypto from Crypto which we would get from ScriptExecutionContext.
&gt; Current approach looks good given callbacks do not have an easy way to get a ScriptExecutionContext as parameter without further refactoring.

Which approach you think would be better? I am currently making CredentialManagement API which will pretty much employ the very same technique.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1384999</commentid>
    <comment_count>10</comment_count>
      <attachid>330267</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-12-30 22:34:38 -0800</bug_when>
    <thetext>Created attachment 330267
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385001</commentid>
    <comment_count>11</comment_count>
      <attachid>330267</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-31 01:25:51 -0800</bug_when>
    <thetext>Comment on attachment 330267
Patch for landing

Clearing flags on attachment: 330267

Committed r226314: &lt;https://trac.webkit.org/changeset/226314&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1385004</commentid>
    <comment_count>12</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-31 09:04:56 -0800</bug_when>
    <thetext>&gt; What&apos;s the benefits of making them isolated copies? They are certainly not
&gt; at this moment.

If you lambda-capture parameters in a thread and execute the lambda in another thread, one needs to ensure thread safety of the parameters.
Strings for instance are refcounted but not threadsafe refcounted.

&gt; &gt;&gt; Source/WebCore/crypto/SubtleCrypto.h:84
&gt; &gt;&gt; +    HashMap&lt;DeferredPromise*, Ref&lt;DeferredPromise&gt;&gt; m_pendingPromises;
&gt; &gt; 
&gt; &gt; We might want to clear m_pendingPromises whenever it is no longer allowed to execute JavaScript.
&gt; &gt; One way of doing so is to make SubtleCryto an ActiveDOMObject and clear m_pendingPromises in the stop method.
&gt; &gt; We might also want to implement hasPendingActivity by checking whether m_pendingPromises is empty.
&gt; 
&gt; I am not quite sure what ActiveDOMObject is. Could you illustrate a bit for
&gt; me? I might need that for the CredentialManagement API as well.

ActiveDOMObjects do several things.
They are typically objects that create asynchronous tasks, which has impact in case document goes to page cache or is destroyed for instance.
ActiveDOMObjects register themselves to their context and are stopped when their context is about to be destroyed (see Document::prepareForDestruction and WorkerThread::stop for instance).

&gt; &gt;&gt; Source/WebCore/crypto/SubtleCrypto.h:85
&gt; &gt;&gt; +    WeakPtrFactory&lt;SubtleCrypto&gt; m_weakPtrFactory;
&gt; &gt; 
&gt; &gt; The alternative to the weak map would have been to get the SubtleCrypto from Crypto which we would get from ScriptExecutionContext.
&gt; &gt; Current approach looks good given callbacks do not have an easy way to get a ScriptExecutionContext as parameter without further refactoring.
&gt; 
&gt; Which approach you think would be better? I am currently making
&gt; CredentialManagement API which will pretty much employ the very same
&gt; technique.

The weak map is a more general approach.
If your implementation is using routines like postTask/postTaskToLoader, it would seem natural to get Crypto from the ScriptExecutionContext.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441988</commentid>
    <comment_count>13</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2018-07-13 13:32:33 -0700</bug_when>
    <thetext>*** Bug 170907 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>328616</attachid>
            <date>2017-12-06 13:38:19 -0800</date>
            <delta_ts>2017-12-06 13:38:19 -0800</delta_ts>
            <desc>Crash Log</desc>
            <filename>current-realm-crash-log.txt</filename>
            <type>text/plain</type>
            <size>108142</size>
            <attacher name="Matt Lewis">jlewis3</attacher>
            
              <data encoding="base64">UHJvY2VzczogICAgICAgICAgICAgICBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxv
cG1lbnQgWzU1NDE2XQpQYXRoOiAgICAgICAgICAgICAgICAgIC9Wb2x1bWVzL1ZPTFVNRS8qL1dl
YktpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9YUENTZXJ2aWNlcy9jb20uYXBwbGUuV2ViS2l0Lldl
YkNvbnRlbnQueHBjL0NvbnRlbnRzL01hY09TL2NvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5E
ZXZlbG9wbWVudApJZGVudGlmaWVyOiAgICAgICAgICAgIGNvbS5hcHBsZS5XZWJLaXQuV2ViQ29u
dGVudC5EZXZlbG9wbWVudApWZXJzaW9uOiAgICAgICAgICAgICAgIDYwNSsgKDYwNS4xLjE1KykK
Q29kZSBUeXBlOiAgICAgICAgICAgICBYODYtNjQgKE5hdGl2ZSkKUGFyZW50IFByb2Nlc3M6ICAg
ICAgICA/Pz8gWzFdClJlc3BvbnNpYmxlOiAgICAgICAgICAgV2ViS2l0VGVzdFJ1bm5lciBbNTUx
NTZdClVzZXIgSUQ6ICAgICAgICAgICAgICAgNTAxCgpEYXRlL1RpbWU6ICAgICAgICAgICAgIDIw
MTctMTItMDYgMTA6MTc6NDAuMjgyIC0wODAwCk9TIFZlcnNpb246ICAgICAgICAgICAgTWFjIE9T
IFggMTAuMTMuMiAoMTdDNzlhKQpSZXBvcnQgVmVyc2lvbjogICAgICAgIDEyCkFub255bW91cyBV
VUlEOiAgICAgICAgQTk2RTFBNDQtOTA1Ny1FRUQxLTYzM0QtRUUxNDRDNzY0MTlDCgoKVGltZSBB
d2FrZSBTaW5jZSBCb290OiA2MDAwMDAgc2Vjb25kcwoKU3lzdGVtIEludGVncml0eSBQcm90ZWN0
aW9uOiBlbmFibGVkCgpDcmFzaGVkIFRocmVhZDogICAgICAgIDIyICBXZWJDb3JlOiBXb3JrZXIK
CkV4Y2VwdGlvbiBUeXBlOiAgICAgICAgRVhDX0JBRF9BQ0NFU1MgKFNJR1NFR1YpCkV4Y2VwdGlv
biBDb2RlczogICAgICAgS0VSTl9JTlZBTElEX0FERFJFU1MgYXQgMHgwMDAwMDAwMGJiYWRiZWVm
CkV4Y2VwdGlvbiBOb3RlOiAgICAgICAgRVhDX0NPUlBTRV9OT1RJRlkKClRlcm1pbmF0aW9uIFNp
Z25hbDogICAgU2VnbWVudGF0aW9uIGZhdWx0OiAxMQpUZXJtaW5hdGlvbiBSZWFzb246ICAgIE5h
bWVzcGFjZSBTSUdOQUwsIENvZGUgMHhiClRlcm1pbmF0aW5nIFByb2Nlc3M6ICAgZXhjIGhhbmRs
ZXIgWzBdCgpWTSBSZWdpb25zIE5lYXIgMHhiYmFkYmVlZjoKLS0+IAogICAgX19URVhUICAgICAg
ICAgICAgICAgICAwMDAwMDAwMTA5MWM0MDAwLTAwMDAwMDAxMDkxYzYwMDAgWyAgICA4S10gci14
L3J3eCBTTT1DT1cgIC9Wb2x1bWVzL1ZPTFVNRS8qL1dlYktpdC5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9YUENTZXJ2aWNlcy9jb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQueHBjL0NvbnRlbnRzL01h
Y09TL2NvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudC5EZXZlbG9wbWVudAoKQXBwbGljYXRpb24g
U3BlY2lmaWMgSW5mb3JtYXRpb246CkNSQVNISU5HIFRFU1Q6IGltcG9ydGVkL3czYy9jc3MvY3Nz
LWNvbG9yLTMvdDQyNS1oc2xhLXZhbHVlcy1iLWV4cGVjdGVkLmh0bWwKClRocmVhZCAwOjogRGlz
cGF0Y2ggcXVldWU6IGNvbS5hcHBsZS5tYWluLXRocmVhZAowICAgbGlic3lzdGVtX2tlcm5lbC5k
eWxpYiAgICAgICAgCTB4MDAwMDdmZmY3MGQ0NjdjMiBtYWNoX21zZ190cmFwICsgMTAKMSAgIGxp
YnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNDVjZGMgbWFjaF9tc2cg
KyA2MAoyICAgY29tLmFwcGxlLkNvcmVGb3VuZGF0aW9uICAgICAgCTB4MDAwMDdmZmY0OTMwY2Ex
NSBfX0NGUnVuTG9vcFNlcnZpY2VNYWNoUG9ydCArIDM0MQozICAgY29tLmFwcGxlLkNvcmVGb3Vu
ZGF0aW9uICAgICAgCTB4MDAwMDdmZmY0OTMwYmQ2NyBfX0NGUnVuTG9vcFJ1biArIDE3ODMKNCAg
IGNvbS5hcHBsZS5Db3JlRm91bmRhdGlvbiAgICAgIAkweDAwMDA3ZmZmNDkzMGIzZDcgQ0ZSdW5M
b29wUnVuU3BlY2lmaWMgKyA0ODcKNSAgIGNvbS5hcHBsZS5ISVRvb2xib3ggICAgICAgICAgIAkw
eDAwMDA3ZmZmNDg2MThlMjYgUnVuQ3VycmVudEV2ZW50TG9vcEluTW9kZSArIDI4Ngo2ICAgY29t
LmFwcGxlLkhJVG9vbGJveCAgICAgICAgICAgCTB4MDAwMDdmZmY0ODYxOGI5NiBSZWNlaXZlTmV4
dEV2ZW50Q29tbW9uICsgNjEzCjcgICBjb20uYXBwbGUuSElUb29sYm94ICAgICAgICAgICAJMHgw
MDAwN2ZmZjQ4NjE4OTE0IF9CbG9ja1VudGlsTmV4dEV2ZW50TWF0Y2hpbmdMaXN0SW5Nb2RlV2l0
aEZpbHRlciArIDY0CjggICBjb20uYXBwbGUuQXBwS2l0ICAgICAgICAgICAgICAJMHgwMDAwN2Zm
ZjQ2OGUzZjVmIF9EUFNOZXh0RXZlbnQgKyAyMDg1CjkgICBjb20uYXBwbGUuQXBwS2l0ICAgICAg
ICAgICAgICAJMHgwMDAwN2ZmZjQ3MDc5YjRjIC1bTlNBcHBsaWNhdGlvbihOU0V2ZW50KSBfbmV4
dEV2ZW50TWF0Y2hpbmdFdmVudE1hc2s6dW50aWxEYXRlOmluTW9kZTpkZXF1ZXVlOl0gKyAzMDQ0
CjEwICBjb20uYXBwbGUuQXBwS2l0ICAgICAgICAgICAgICAJMHgwMDAwN2ZmZjQ2OGQ4ZDZkIC1b
TlNBcHBsaWNhdGlvbiBydW5dICsgNzY0CjExICBjb20uYXBwbGUuQXBwS2l0ICAgICAgICAgICAg
ICAJMHgwMDAwN2ZmZjQ2OGE3ZjFhIE5TQXBwbGljYXRpb25NYWluICsgODA0CjEyICBsaWJ4cGMu
ZHlsaWIgICAgICAgICAgICAgICAgICAJMHgwMDAwN2ZmZjcwZWNkNDJmIF94cGNfb2JqY19tYWlu
ICsgNTgwCjEzICBsaWJ4cGMuZHlsaWIgICAgICAgICAgICAgICAgICAJMHgwMDAwN2ZmZjcwZWNj
MDgyIHhwY19tYWluICsgNDE3CjE0ICBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQgICAJMHgw
MDAwMDAwMTA5MWM1MTJiIG1haW4gKyAxMTk1CjE1ICBsaWJkeWxkLmR5bGliICAgICAgICAgICAg
ICAgICAJMHgwMDAwN2ZmZjcwYzAwMTE1IHN0YXJ0ICsgMQoKVGhyZWFkIDE6OiBjb20uYXBwbGUu
TlNFdmVudFRocmVhZAowICAgbGlic3lzdGVtX2tlcm5lbC5keWxpYiAgICAgICAgCTB4MDAwMDdm
ZmY3MGQ0NjdjMiBtYWNoX21zZ190cmFwICsgMTAKMSAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIg
ICAgICAgIAkweDAwMDA3ZmZmNzBkNDVjZGMgbWFjaF9tc2cgKyA2MAoyICAgY29tLmFwcGxlLkNv
cmVGb3VuZGF0aW9uICAgICAgCTB4MDAwMDdmZmY0OTMwY2ExNSBfX0NGUnVuTG9vcFNlcnZpY2VN
YWNoUG9ydCArIDM0MQozICAgY29tLmFwcGxlLkNvcmVGb3VuZGF0aW9uICAgICAgCTB4MDAwMDdm
ZmY0OTMwYmQ2NyBfX0NGUnVuTG9vcFJ1biArIDE3ODMKNCAgIGNvbS5hcHBsZS5Db3JlRm91bmRh
dGlvbiAgICAgIAkweDAwMDA3ZmZmNDkzMGIzZDcgQ0ZSdW5Mb29wUnVuU3BlY2lmaWMgKyA0ODcK
NSAgIGNvbS5hcHBsZS5BcHBLaXQgICAgICAgICAgICAgIAkweDAwMDA3ZmZmNDZhMjEzYzggX05T
RXZlbnRUaHJlYWQgKyAxODQKNiAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAw
MDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0MAo3ICAgbGlic3lzdGVtX3B0aHJlYWQu
ZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3Nwo4ICAg
bGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRf
c3RhcnQgKyAxMwoKVGhyZWFkIDI6CjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJ
MHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRo
cmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRfd2FpdCAr
IDczMgoyICAgbGliYysrLjEuZHlsaWIgICAgICAgICAgICAgICAgCTB4MDAwMDdmZmY2ZWMzOGQ0
MyBzdGQ6Ol9fMTo6Y29uZGl0aW9uX3ZhcmlhYmxlOjpfX2RvX3RpbWVkX3dhaXQoc3RkOjpfXzE6
OnVuaXF1ZV9sb2NrPHN0ZDo6X18xOjptdXRleD4mLCBzdGQ6Ol9fMTo6Y2hyb25vOjp0aW1lX3Bv
aW50PHN0ZDo6X18xOjpjaHJvbm86OnN5c3RlbV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6ZHVy
YXRpb248bG9uZyBsb25nLCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4pICsg
OTMKMyAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MWY2NjUg
c3RkOjpfXzE6OmN2X3N0YXR1cyBzdGQ6Ol9fMTo6Y29uZGl0aW9uX3ZhcmlhYmxlOjp3YWl0X2Zv
cjxsb25nIGxvbmcsIHN0ZDo6X18xOjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4oc3RkOjpfXzE6
OnVuaXF1ZV9sb2NrPHN0ZDo6X18xOjptdXRleD4mLCBzdGQ6Ol9fMTo6Y2hyb25vOjpkdXJhdGlv
bjxsb25nIGxvbmcsIHN0ZDo6X18xOjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4gY29uc3QmKSAr
IDM0MjkgKF9fbXV0ZXhfYmFzZTo0MTYpCjQgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmODFlODJmIHN0ZDo6X18xOjpjdl9zdGF0dXMgc3RkOjpfXzE6OmNvbmRp
dGlvbl92YXJpYWJsZTo6d2FpdF91bnRpbDxzdGQ6Ol9fMTo6Y2hyb25vOjpzdGVhZHlfY2xvY2ss
IHN0ZDo6X18xOjpjaHJvbm86OmR1cmF0aW9uPGxvbmcgbG9uZywgc3RkOjpfXzE6OnJhdGlvPDFs
LCAxMDAwMDAwMDAwbD4gPiA+KHN0ZDo6X18xOjp1bmlxdWVfbG9jazxzdGQ6Ol9fMTo6bXV0ZXg+
Jiwgc3RkOjpfXzE6OmNocm9ubzo6dGltZV9wb2ludDxzdGQ6Ol9fMTo6Y2hyb25vOjpzdGVhZHlf
Y2xvY2ssIHN0ZDo6X18xOjpjaHJvbm86OmR1cmF0aW9uPGxvbmcgbG9uZywgc3RkOjpfXzE6OnJh
dGlvPDFsLCAxMDAwMDAwMDAwbD4gPiA+IGNvbnN0JikgKyA0NzkgKF9fbXV0ZXhfYmFzZTozODUp
CjUgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODFlNTM4IHN0
ZDo6X18xOjpjdl9zdGF0dXMgc3RkOjpfXzE6OmNvbmRpdGlvbl92YXJpYWJsZV9hbnk6OndhaXRf
dW50aWw8c3RkOjpfXzE6OnVuaXF1ZV9sb2NrPGJtYWxsb2M6Ok11dGV4Piwgc3RkOjpfXzE6OmNo
cm9ubzo6c3RlYWR5X2Nsb2NrLCBzdGQ6Ol9fMTo6Y2hyb25vOjpkdXJhdGlvbjxsb25nIGxvbmcs
IHN0ZDo6X18xOjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4gPihzdGQ6Ol9fMTo6dW5pcXVlX2xv
Y2s8Ym1hbGxvYzo6TXV0ZXg+Jiwgc3RkOjpfXzE6OmNocm9ubzo6dGltZV9wb2ludDxzdGQ6Ol9f
MTo6Y2hyb25vOjpzdGVhZHlfY2xvY2ssIHN0ZDo6X18xOjpjaHJvbm86OmR1cmF0aW9uPGxvbmcg
bG9uZywgc3RkOjpfXzE6OnJhdGlvPDFsLCAxMDAwMDAwMDAwbD4gPiA+IGNvbnN0JikgKyA1ODQg
KGNvbmRpdGlvbl92YXJpYWJsZToyMjQpCjYgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmODFiMzg3IGJtYWxsb2M6OlNjYXZlbmdlcjo6dGhyZWFkUnVuTG9vcCgp
ICsgMTg2MyAoU2NhdmVuZ2VyLmNwcDoxNjQpCjcgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUg
ICAgICAJMHgwMDAwMDAwNzFmODFhM2E1IGJtYWxsb2M6OlNjYXZlbmdlcjo6dGhyZWFkRW50cnlQ
b2ludChibWFsbG9jOjpTY2F2ZW5nZXIqKSArIDIxIChTY2F2ZW5nZXIuY3BwOjE0MikKOCAgIGNv
bS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MWNkMzIgdm9pZCogc3Rk
OjpfXzE6Ol9fdGhyZWFkX3Byb3h5PHN0ZDo6X18xOjp0dXBsZTxzdGQ6Ol9fMTo6dW5pcXVlX3B0
cjxzdGQ6Ol9fMTo6X190aHJlYWRfc3RydWN0LCBzdGQ6Ol9fMTo6ZGVmYXVsdF9kZWxldGU8c3Rk
OjpfXzE6Ol9fdGhyZWFkX3N0cnVjdD4gPiwgdm9pZCAoKikoYm1hbGxvYzo6U2NhdmVuZ2VyKiks
IGJtYWxsb2M6OlNjYXZlbmdlcio+ID4odm9pZCopICsgNTQ2ICh0aHJlYWQ6MzQ2KQo5ICAgbGli
c3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjZjMSBfcHRocmVhZF9i
b2R5ICsgMzQwCjEwICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcw
ZThiNTZkIF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjExICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAg
ICAgICAJMHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9zdGFydCArIDEzCgpUaHJlYWQgMzo6IGNv
bS5hcHBsZS5OU1VSTENvbm5lY3Rpb25Mb2FkZXIKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIg
ICAgICAgIAkweDAwMDA3ZmZmNzBkNDY3YzIgbWFjaF9tc2dfdHJhcCArIDEwCjEgICBsaWJzeXN0
ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDQ1Y2RjIG1hY2hfbXNnICsgNjAK
MiAgIGNvbS5hcHBsZS5Db3JlRm91bmRhdGlvbiAgICAgIAkweDAwMDA3ZmZmNDkzMGNhMTUgX19D
RlJ1bkxvb3BTZXJ2aWNlTWFjaFBvcnQgKyAzNDEKMyAgIGNvbS5hcHBsZS5Db3JlRm91bmRhdGlv
biAgICAgIAkweDAwMDA3ZmZmNDkzMGJkNjcgX19DRlJ1bkxvb3BSdW4gKyAxNzgzCjQgICBjb20u
YXBwbGUuQ29yZUZvdW5kYXRpb24gICAgICAJMHgwMDAwN2ZmZjQ5MzBiM2Q3IENGUnVuTG9vcFJ1
blNwZWNpZmljICsgNDg3CjUgICBjb20uYXBwbGUuQ0ZOZXR3b3JrICAgICAgICAgICAJMHgwMDAw
N2ZmZjQ4NDc5Zjg0IC1bX19Db3JlU2NoZWR1bGluZ1NldFJ1bm5hYmxlIHJ1bkZvcmV2ZXJdICsg
NzIyCjYgICBjb20uYXBwbGUuRm91bmRhdGlvbiAgICAgICAgICAJMHgwMDAwN2ZmZjRiNDEzZTQ4
IF9fTlNUaHJlYWRfX3N0YXJ0X18gKyAxMTk3CjcgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAg
ICAgICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9wdGhyZWFkX2JvZHkgKyAzNDAKOCAgIGxpYnN5c3Rl
bV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQg
KyAzNzcKOSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGFj
NWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRocmVhZCA0OgowICAgbGlic3lzdGVtX2tlcm5lbC5keWxp
YiAgICAgICAgCTB4MDAwMDdmZmY3MGQ0ZmNlZSBfX3BzeW5jaF9jdndhaXQgKyAxMAoxICAgbGli
c3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YzY2MiBfcHRocmVhZF9j
b25kX3dhaXQgKyA3MzIKMiAgIGxpYmMrKy4xLmR5bGliICAgICAgICAgICAgICAgIAkweDAwMDA3
ZmZmNmVjMzhkNDMgc3RkOjpfXzE6OmNvbmRpdGlvbl92YXJpYWJsZTo6X19kb190aW1lZF93YWl0
KHN0ZDo6X18xOjp1bmlxdWVfbG9jazxzdGQ6Ol9fMTo6bXV0ZXg+Jiwgc3RkOjpfXzE6OmNocm9u
bzo6dGltZV9wb2ludDxzdGQ6Ol9fMTo6Y2hyb25vOjpzeXN0ZW1fY2xvY2ssIHN0ZDo6X18xOjpj
aHJvbm86OmR1cmF0aW9uPGxvbmcgbG9uZywgc3RkOjpfXzE6OnJhdGlvPDFsLCAxMDAwMDAwMDAw
bD4gPiA+KSArIDkzCjMgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAw
NzFmODFmNjY1IHN0ZDo6X18xOjpjdl9zdGF0dXMgc3RkOjpfXzE6OmNvbmRpdGlvbl92YXJpYWJs
ZTo6d2FpdF9mb3I8bG9uZyBsb25nLCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+
KHN0ZDo6X18xOjp1bmlxdWVfbG9jazxzdGQ6Ol9fMTo6bXV0ZXg+Jiwgc3RkOjpfXzE6OmNocm9u
bzo6ZHVyYXRpb248bG9uZyBsb25nLCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+
IGNvbnN0JikgKyAzNDI5IChfX211dGV4X2Jhc2U6NDE2KQo0ICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgxZTgyZiBzdGQ6Ol9fMTo6Y3Zfc3RhdHVzIHN0ZDo6
X18xOjpjb25kaXRpb25fdmFyaWFibGU6OndhaXRfdW50aWw8c3RkOjpfXzE6OmNocm9ubzo6c3Rl
YWR5X2Nsb2NrLCBzdGQ6Ol9fMTo6Y2hyb25vOjpkdXJhdGlvbjxsb25nIGxvbmcsIHN0ZDo6X18x
OjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4gPihzdGQ6Ol9fMTo6dW5pcXVlX2xvY2s8c3RkOjpf
XzE6Om11dGV4PiYsIHN0ZDo6X18xOjpjaHJvbm86OnRpbWVfcG9pbnQ8c3RkOjpfXzE6OmNocm9u
bzo6c3RlYWR5X2Nsb2NrLCBzdGQ6Ol9fMTo6Y2hyb25vOjpkdXJhdGlvbjxsb25nIGxvbmcsIHN0
ZDo6X18xOjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4gPiBjb25zdCYpICsgNDc5IChfX211dGV4
X2Jhc2U6Mzg1KQo1ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
ZjgxZTUzOCBzdGQ6Ol9fMTo6Y3Zfc3RhdHVzIHN0ZDo6X18xOjpjb25kaXRpb25fdmFyaWFibGVf
YW55Ojp3YWl0X3VudGlsPHN0ZDo6X18xOjp1bmlxdWVfbG9jazxibWFsbG9jOjpNdXRleD4sIHN0
ZDo6X18xOjpjaHJvbm86OnN0ZWFkeV9jbG9jaywgc3RkOjpfXzE6OmNocm9ubzo6ZHVyYXRpb248
bG9uZyBsb25nLCBzdGQ6Ol9fMTo6cmF0aW88MWwsIDEwMDAwMDAwMDBsPiA+ID4oc3RkOjpfXzE6
OnVuaXF1ZV9sb2NrPGJtYWxsb2M6Ok11dGV4PiYsIHN0ZDo6X18xOjpjaHJvbm86OnRpbWVfcG9p
bnQ8c3RkOjpfXzE6OmNocm9ubzo6c3RlYWR5X2Nsb2NrLCBzdGQ6Ol9fMTo6Y2hyb25vOjpkdXJh
dGlvbjxsb25nIGxvbmcsIHN0ZDo6X18xOjpyYXRpbzwxbCwgMTAwMDAwMDAwMGw+ID4gPiBjb25z
dCYpICsgNTg0IChjb25kaXRpb25fdmFyaWFibGU6MjI0KQo2ICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgxYjM4NyBibWFsbG9jOjpTY2F2ZW5nZXI6OnRocmVh
ZFJ1bkxvb3AoKSArIDE4NjMgKFNjYXZlbmdlci5jcHA6MTY0KQo3ICAgY29tLmFwcGxlLkphdmFT
Y3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgxYTNhNSBibWFsbG9jOjpTY2F2ZW5nZXI6OnRo
cmVhZEVudHJ5UG9pbnQoYm1hbGxvYzo6U2NhdmVuZ2VyKikgKyAyMSAoU2NhdmVuZ2VyLmNwcDox
NDIpCjggICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODFjZDMy
IHZvaWQqIHN0ZDo6X18xOjpfX3RocmVhZF9wcm94eTxzdGQ6Ol9fMTo6dHVwbGU8c3RkOjpfXzE6
OnVuaXF1ZV9wdHI8c3RkOjpfXzE6Ol9fdGhyZWFkX3N0cnVjdCwgc3RkOjpfXzE6OmRlZmF1bHRf
ZGVsZXRlPHN0ZDo6X18xOjpfX3RocmVhZF9zdHJ1Y3Q+ID4sIHZvaWQgKCopKGJtYWxsb2M6OlNj
YXZlbmdlciopLCBibWFsbG9jOjpTY2F2ZW5nZXIqPiA+KHZvaWQqKSArIDU0NiAodGhyZWFkOjM0
NikKOSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEg
X3B0aHJlYWRfYm9keSArIDM0MAoxMCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4
MDAwMDdmZmY3MGU4YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3NwoxMSAgbGlic3lzdGVtX3B0aHJl
YWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhy
ZWFkIDU6OiBXZWJDb3JlOiBTY3JvbGxpbmcKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAg
ICAgIAkweDAwMDA3ZmZmNzBkNDY3YzIgbWFjaF9tc2dfdHJhcCArIDEwCjEgICBsaWJzeXN0ZW1f
a2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDQ1Y2RjIG1hY2hfbXNnICsgNjAKMiAg
IGNvbS5hcHBsZS5Db3JlRm91bmRhdGlvbiAgICAgIAkweDAwMDA3ZmZmNDkzMGNhMTUgX19DRlJ1
bkxvb3BTZXJ2aWNlTWFjaFBvcnQgKyAzNDEKMyAgIGNvbS5hcHBsZS5Db3JlRm91bmRhdGlvbiAg
ICAgIAkweDAwMDA3ZmZmNDkzMGJkNjcgX19DRlJ1bkxvb3BSdW4gKyAxNzgzCjQgICBjb20uYXBw
bGUuQ29yZUZvdW5kYXRpb24gICAgICAJMHgwMDAwN2ZmZjQ5MzBiM2Q3IENGUnVuTG9vcFJ1blNw
ZWNpZmljICsgNDg3CjUgICBjb20uYXBwbGUuQ29yZUZvdW5kYXRpb24gICAgICAJMHgwMDAwN2Zm
ZjQ5MzQ5ODAzIENGUnVuTG9vcFJ1biArIDk5CjYgICBjb20uYXBwbGUuV2ViQ29yZSAgICAgICAg
ICAgICAJMHgwMDAwMDAwNzEwNWExYzY5IFdlYkNvcmU6OlNjcm9sbGluZ1RocmVhZDo6aW5pdGlh
bGl6ZVJ1bkxvb3AoKSArIDYxNyAoU2Nyb2xsaW5nVGhyZWFkTWFjLm1tOjUzKQo3ICAgY29tLmFw
cGxlLldlYkNvcmUgICAgICAgICAgICAgCTB4MDAwMDAwMDcxMjZhMzU4OSBXZWJDb3JlOjpTY3Jv
bGxpbmdUaHJlYWQ6OmNyZWF0ZVRocmVhZElmTmVlZGVkKCk6OiRfMTo6b3BlcmF0b3IoKSgpIGNv
bnN0ICsgNDEgKFNjcm9sbGluZ1RocmVhZC5jcHA6ODUpCjggICBjb20uYXBwbGUuV2ViQ29yZSAg
ICAgICAgICAgICAJMHgwMDAwMDAwNzEyNmEzNTM5IFdURjo6RnVuY3Rpb248dm9pZCAoKT46OkNh
bGxhYmxlV3JhcHBlcjxXZWJDb3JlOjpTY3JvbGxpbmdUaHJlYWQ6OmNyZWF0ZVRocmVhZElmTmVl
ZGVkKCk6OiRfMT46OmNhbGwoKSArIDI1IChGdW5jdGlvbi5oOjEwMSkKOSAgIGNvbS5hcHBsZS5K
YXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3OGQyZmIgV1RGOjpGdW5jdGlvbjx2b2lk
ICgpPjo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgMTM5IChGdW5jdGlvbi5oOjU2KQoxMCAgY29tLmFw
cGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdmZmViZiBXVEY6OlRocmVhZDo6
ZW50cnlQb2ludChXVEY6OlRocmVhZDo6TmV3VGhyZWFkQ29udGV4dCopICsgMzUxIChUaHJlYWRp
bmcuY3BwOjEyOSkKMTEgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3
MWY4MDU2NzUgV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQqKSArIDIxIChUaHJlYWRpbmdQ
dGhyZWFkcy5jcHA6MjIzKQoxMiAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAw
MDdmZmY3MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsgMzQwCjEzICBsaWJzeXN0ZW1fcHRocmVhZC5k
eWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjE0ICBs
aWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9z
dGFydCArIDEzCgpUaHJlYWQgNjo6IGNvbS5hcHBsZS5jb3JlYXVkaW8uQVFDbGllbnQKMCAgIGxp
YnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNDY3YzIgbWFjaF9tc2df
dHJhcCArIDEwCjEgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcw
ZDQ1Y2RjIG1hY2hfbXNnICsgNjAKMiAgIGNvbS5hcHBsZS5Db3JlRm91bmRhdGlvbiAgICAgIAkw
eDAwMDA3ZmZmNDkzMGNhMTUgX19DRlJ1bkxvb3BTZXJ2aWNlTWFjaFBvcnQgKyAzNDEKMyAgIGNv
bS5hcHBsZS5Db3JlRm91bmRhdGlvbiAgICAgIAkweDAwMDA3ZmZmNDkzMGJkNjcgX19DRlJ1bkxv
b3BSdW4gKyAxNzgzCjQgICBjb20uYXBwbGUuQ29yZUZvdW5kYXRpb24gICAgICAJMHgwMDAwN2Zm
ZjQ5MzBiM2Q3IENGUnVuTG9vcFJ1blNwZWNpZmljICsgNDg3CjUgICBjb20uYXBwbGUuYXVkaW8u
dG9vbGJveC5BdWRpb1Rvb2xib3gJMHgwMDAwN2ZmZjQ3Y2FjMWFhIEdlbmVyaWNSdW5Mb29wVGhy
ZWFkOjpFbnRyeSh2b2lkKikgKyAxNTgKNiAgIGNvbS5hcHBsZS5hdWRpby50b29sYm94LkF1ZGlv
VG9vbGJveAkweDAwMDA3ZmZmNDdjYWJlYjkgQ0FQVGhyZWFkOjpFbnRyeShDQVBUaHJlYWQqKSAr
IDc3CjcgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNmMx
IF9wdGhyZWFkX2JvZHkgKyAzNDAKOCAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkw
eDAwMDA3ZmZmNzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAzNzcKOSAgIGxpYnN5c3RlbV9wdGhy
ZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRo
cmVhZCA3OjogY29tLmFwcGxlLmNvcmVtZWRpYS5zY2hlZHVsZWRmaWxlaW8KMCAgIGxpYnN5c3Rl
bV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0
ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2
NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIgICBjb20uYXBwbGUuQ29yZU1lZGlhICAgICAg
ICAgICAJMHgwMDAwN2ZmZjRhMmQ0NDJhIFdhaXRPbkNvbmRpdGlvbiArIDExCjMgICBjb20uYXBw
bGUuQ29yZU1lZGlhICAgICAgICAgICAJMHgwMDAwN2ZmZjRhMmQ0MmU3IEZpZ1NlbWFwaG9yZVdh
aXRSZWxhdGl2ZSArIDE0OQo0ICAgY29tLmFwcGxlLkNvcmVNZWRpYSAgICAgICAgICAgCTB4MDAw
MDdmZmY0YTJlOTNmMiBGaWdTY2hlZHVsZWRGaWxlSU9UaHJlYWQgKyA0Mzk1CjUgICBjb20uYXBw
bGUuQ29yZU1lZGlhICAgICAgICAgICAJMHgwMDAwN2ZmZjRhMmQ0MTdiIGZpZ1RocmVhZE1haW4g
KyAyNzcKNiAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2
YzEgX3B0aHJlYWRfYm9keSArIDM0MAo3ICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAg
CTB4MDAwMDdmZmY3MGU4YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3Nwo4ICAgbGlic3lzdGVtX3B0
aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoK
VGhyZWFkIDg6OiBjb20uYXBwbGUuY29yZW1lZGlhLmFzeW5jaW8KMCAgIGxpYnN5c3RlbV9rZXJu
ZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsgMTAK
MSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIgX3B0
aHJlYWRfY29uZF93YWl0ICsgNzMyCjIgICBjb20uYXBwbGUuQ29yZU1lZGlhICAgICAgICAgICAJ
MHgwMDAwN2ZmZjRhMmQ0NDJhIFdhaXRPbkNvbmRpdGlvbiArIDExCjMgICBjb20uYXBwbGUuQ29y
ZU1lZGlhICAgICAgICAgICAJMHgwMDAwN2ZmZjRhMmQ0MmU3IEZpZ1NlbWFwaG9yZVdhaXRSZWxh
dGl2ZSArIDE0OQo0ICAgY29tLmFwcGxlLk1lZGlhVG9vbGJveCAgICAgICAgCTB4MDAwMDdmZmY0
ZDJhYjllNiAweDdmZmY0ZDI0ZjAwMCArIDM3OTM2Ngo1ICAgY29tLmFwcGxlLkNvcmVNZWRpYSAg
ICAgICAgICAgCTB4MDAwMDdmZmY0YTJkNDE3YiBmaWdUaHJlYWRNYWluICsgMjc3CjYgICBsaWJz
eXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9wdGhyZWFkX2Jv
ZHkgKyAzNDAKNyAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBl
OGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAzNzcKOCAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAg
ICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRocmVhZCA5OjogV2Vi
S2l0V2ViUlRDTmV0d29yawowICAgbGlic3lzdGVtX2tlcm5lbC5keWxpYiAgICAgICAgCTB4MDAw
MDdmZmY3MGQ0ZmNlZSBfX3BzeW5jaF9jdndhaXQgKyAxMAoxICAgbGlic3lzdGVtX3B0aHJlYWQu
ZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YzY2MiBfcHRocmVhZF9jb25kX3dhaXQgKyA3MzIK
MiAgIGxpYndlYnJ0Yy5keWxpYiAgICAgICAgICAgICAgIAkweDAwMDAwMDA3MWQwMzU1YWMgcnRj
OjpFdmVudDo6V2FpdChpbnQpICsgMjY4IChldmVudC5jYzoxMjApCjMgICBsaWJ3ZWJydGMuZHls
aWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFkMTgyOTY2IHJ0Yzo6TnVsbFNvY2tldFNlcnZl
cjo6V2FpdChpbnQsIGJvb2wpICsgMzggKG51bGxzb2NrZXRzZXJ2ZXIuY2M6MjApCjQgICBsaWJ3
ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFkMTAxN2U2IHJ0Yzo6TWVzc2Fn
ZVF1ZXVlOjpHZXQocnRjOjpNZXNzYWdlKiwgaW50LCBib29sKSArIDMxNTggKG1lc3NhZ2VxdWV1
ZS5jYzozNDYpCjUgICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFj
ZTk3ZDllIHJ0Yzo6VGhyZWFkOjpQcm9jZXNzTWVzc2FnZXMoaW50KSArIDE0MiAodGhyZWFkX2Rh
cndpbi5tbTo3MikKNiAgIGxpYndlYnJ0Yy5keWxpYiAgICAgICAgICAgICAgIAkweDAwMDAwMDA3
MWQ1MzIyZmEgcnRjOjpUaHJlYWQ6OlJ1bigpICsgMjYgKHRocmVhZC5jYzozMTcpCjcgICBsaWJ3
ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFjZTk3Y2NlIHJ0Yzo6VGhyZWFk
OjpQcmVSdW4odm9pZCopICsgMzUwICh0aHJlYWRfZGFyd2luLm1tOjYwKQo4ICAgbGlic3lzdGVt
X3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsg
MzQwCjkgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNTZk
IF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjEwICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJ
MHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9zdGFydCArIDEzCgpUaHJlYWQgMTA6OiBXZWJLaXRX
ZWJSVENTaWduYWxpbmcKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3
ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5
bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIg
ICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFkMDM1NWFjIHJ0Yzo6
RXZlbnQ6OldhaXQoaW50KSArIDI2OCAoZXZlbnQuY2M6MTIwKQozICAgbGlid2VicnRjLmR5bGli
ICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDE4Mjk2NiBydGM6Ok51bGxTb2NrZXRTZXJ2ZXI6
OldhaXQoaW50LCBib29sKSArIDM4IChudWxsc29ja2V0c2VydmVyLmNjOjIwKQo0ICAgbGlid2Vi
cnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDEwMTdlNiBydGM6Ok1lc3NhZ2VR
dWV1ZTo6R2V0KHJ0Yzo6TWVzc2FnZSosIGludCwgYm9vbCkgKyAzMTU4IChtZXNzYWdlcXVldWUu
Y2M6MzQ2KQo1ICAgbGlid2VicnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxY2U5
N2Q5ZSBydGM6OlRocmVhZDo6UHJvY2Vzc01lc3NhZ2VzKGludCkgKyAxNDIgKHRocmVhZF9kYXJ3
aW4ubW06NzIpCjYgICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFk
NTMyMmZhIHJ0Yzo6VGhyZWFkOjpSdW4oKSArIDI2ICh0aHJlYWQuY2M6MzE3KQo3ICAgbGlid2Vi
cnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxY2U5N2NjZSBydGM6OlRocmVhZDo6
UHJlUnVuKHZvaWQqKSArIDM1MCAodGhyZWFkX2Rhcndpbi5tbTo2MCkKOCAgIGxpYnN5c3RlbV9w
dGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0
MAo5ICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBf
cHRocmVhZF9zdGFydCArIDM3NwoxMCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4
MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDExOjogV2ViS2l0V2Vi
UlRDQXVkaW9Nb2R1bGUKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3
ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5
bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIg
ICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFkMDM1NWFjIHJ0Yzo6
RXZlbnQ6OldhaXQoaW50KSArIDI2OCAoZXZlbnQuY2M6MTIwKQozICAgbGlid2VicnRjLmR5bGli
ICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDE4Mjk2NiBydGM6Ok51bGxTb2NrZXRTZXJ2ZXI6
OldhaXQoaW50LCBib29sKSArIDM4IChudWxsc29ja2V0c2VydmVyLmNjOjIwKQo0ICAgbGlid2Vi
cnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDEwMTdlNiBydGM6Ok1lc3NhZ2VR
dWV1ZTo6R2V0KHJ0Yzo6TWVzc2FnZSosIGludCwgYm9vbCkgKyAzMTU4IChtZXNzYWdlcXVldWUu
Y2M6MzQ2KQo1ICAgbGlid2VicnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxY2U5
N2Q5ZSBydGM6OlRocmVhZDo6UHJvY2Vzc01lc3NhZ2VzKGludCkgKyAxNDIgKHRocmVhZF9kYXJ3
aW4ubW06NzIpCjYgICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFk
NTMyMmZhIHJ0Yzo6VGhyZWFkOjpSdW4oKSArIDI2ICh0aHJlYWQuY2M6MzE3KQo3ICAgbGlid2Vi
cnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxY2U5N2NjZSBydGM6OlRocmVhZDo6
UHJlUnVuKHZvaWQqKSArIDM1MCAodGhyZWFkX2Rhcndpbi5tbTo2MCkKOCAgIGxpYnN5c3RlbV9w
dGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0
MAo5ICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBf
cHRocmVhZF9zdGFydCArIDM3NwoxMCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4
MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDEyOjogVm9pY2VQcm9j
ZXNzVGhyZWFkCjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcw
ZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAg
ICAgICAJMHgwMDAwN2ZmZjcwZThjNjliIF9wdGhyZWFkX2NvbmRfd2FpdCArIDc4OQoyICAgbGli
d2VicnRjLmR5bGliICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDAzNTU1NyBydGM6OkV2ZW50
OjpXYWl0KGludCkgKyAxODMgKGV2ZW50LmNjOjExMikKMyAgIGxpYndlYnJ0Yy5keWxpYiAgICAg
ICAgICAgICAgIAkweDAwMDAwMDA3MWQwMmZkYjggd2VicnRjOjpFdmVudFdyYXBwZXJJbXBsOjpX
YWl0KHVuc2lnbmVkIGxvbmcpICsgODggKGV2ZW50LmNjOjQyKQo0ICAgbGlid2VicnRjLmR5bGli
ICAgICAgICAgICAgICAgCTB4MDAwMDAwMDcxZDI5ZThkOCB3ZWJydGM6OlByb2Nlc3NUaHJlYWRJ
bXBsOjpQcm9jZXNzKCkgKyAxNzM2IChwcm9jZXNzX3RocmVhZF9pbXBsLmNjOjIxNykKNSAgIGxp
YndlYnJ0Yy5keWxpYiAgICAgICAgICAgICAgIAkweDAwMDAwMDA3MWQyOWNjMzUgd2VicnRjOjpQ
cm9jZXNzVGhyZWFkSW1wbDo6UnVuKHZvaWQqKSArIDIxIChwcm9jZXNzX3RocmVhZF9pbXBsLmNj
OjE2NikKNiAgIGxpYndlYnJ0Yy5keWxpYiAgICAgICAgICAgICAgIAkweDAwMDAwMDA3MWQyNjQw
NWYgcnRjOjpQbGF0Zm9ybVRocmVhZDo6UnVuKCkgKyA3ODMgKHBsYXRmb3JtX3RocmVhZC5jYzoy
NDQpCjcgICBsaWJ3ZWJydGMuZHlsaWIgICAgICAgICAgICAgICAJMHgwMDAwMDAwNzFkMjYzZDQ1
IHJ0Yzo6UGxhdGZvcm1UaHJlYWQ6OlN0YXJ0VGhyZWFkKHZvaWQqKSArIDIxIChwbGF0Zm9ybV90
aHJlYWQuY2M6MTQwKQo4ICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdm
ZmY3MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsgMzQwCjkgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxp
YiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjEwICBsaWJz
eXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9zdGFy
dCArIDEzCgpUaHJlYWQgMTM6OiBDVkRpc3BsYXlMaW5rCjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5
bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBs
aWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThjNjliIF9wdGhyZWFk
X2NvbmRfd2FpdCArIDc4OQoyICAgY29tLmFwcGxlLkNvcmVWaWRlbyAgICAgICAgICAgCTB4MDAw
MDdmZmY0YWVlMjM2NyBDVkRpc3BsYXlMaW5rOjp3YWl0VW50aWwodW5zaWduZWQgbG9uZyBsb25n
KSArIDIzNwozICAgY29tLmFwcGxlLkNvcmVWaWRlbyAgICAgICAgICAgCTB4MDAwMDdmZmY0YWVl
MTkxOCBDVkRpc3BsYXlMaW5rOjpydW5JT1RocmVhZCgpICsgNTAwCjQgICBsaWJzeXN0ZW1fcHRo
cmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9wdGhyZWFkX2JvZHkgKyAzNDAK
NSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI1NmQgX3B0
aHJlYWRfc3RhcnQgKyAzNzcKNiAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAw
MDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRocmVhZCAxNDoKMCAgIGxpYnN5c3Rl
bV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNTA1NjIgX193b3JrcV9rZXJucmV0
dXJuICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBl
OGIwNmEgX3B0aHJlYWRfd3F0aHJlYWQgKyAxMDM1CjIgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxp
YiAgICAgICAJMHgwMDAwN2ZmZjcwZThhYzRkIHN0YXJ0X3dxdGhyZWFkICsgMTMKClRocmVhZCAx
NTo6IFdURjo6QXV0b21hdGljVGhyZWFkCjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAg
ICAJMHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1f
cHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRfd2Fp
dCArIDczMgoyICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgw
NjUxMyBXVEY6OlRocmVhZENvbmRpdGlvbjo6dGltZWRXYWl0KFdURjo6TXV0ZXgmLCBkb3VibGUp
ICsgMTk1IChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6NTY5KQozICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdjNWY2YiBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25k
aXRpb25hbGx5SW1wbCh2b2lkIGNvbnN0KiwgV1RGOjpTY29wZWRMYW1iZGE8Ym9vbCAoKT4gY29u
c3QmLCBXVEY6OlNjb3BlZExhbWJkYTx2b2lkICgpPiBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5h
bWljQ2xvY2tUeXBlIGNvbnN0JikgKyA0MTEgKFBhcmtpbmdMb3QuY3BwOjYwNCkKNCAgIGNvbS5h
cHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWVkMmJhMDAgV1RGOjpQYXJraW5n
TG90OjpQYXJrUmVzdWx0IFdURjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHk8Ym9vbCBX
VEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6
VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEnKCksIGJvb2wgV1RGOjpD
b25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVX
aXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhMCcoKT4odm9pZCBjb25zdCosIFdU
Rjo6TG9jayBjb25zdCYsIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpM
b2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjon
bGFtYmRhMCcoKSBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jikg
KyA5NiAoUGFya2luZ0xvdC5oOjgxKQo1ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAg
CTB4MDAwMDAwMDcxZWQyYjkwZiBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdU
Rjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3Qm
KSArIDE0MyAoQ29uZGl0aW9uLmg6ODEpCjYgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmNzgwZTk5IGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0Rm9yPFdU
Rjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpTZWNvbmRzKSArIDEwNSAoQ29uZGl0aW9uLmg6MTIx
KQo3ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MmE1ZSBX
VEY6OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjok
XzA6Om9wZXJhdG9yKCkoKSBjb25zdCArIDQ3OCAoQXV0b21hdGljVGhyZWFkLmNwcDoyMDYpCjgg
ICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgyNzM5IFdURjo6
RnVuY3Rpb248dm9pZCAoKT46OkNhbGxhYmxlV3JhcHBlcjxXVEY6OkF1dG9tYXRpY1RocmVhZDo6
c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA+OjpjYWxsKCkgKyAyNSAoRnVu
Y3Rpb24uaDoxMDEpCjkgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAw
NzFmNzhkMmZiIFdURjo6RnVuY3Rpb248dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCArIDEz
OSAoRnVuY3Rpb24uaDo1NikKMTAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAw
MDAwMDA3MWY3ZmZlYmYgV1RGOjpUaHJlYWQ6OmVudHJ5UG9pbnQoV1RGOjpUaHJlYWQ6Ok5ld1Ro
cmVhZENvbnRleHQqKSArIDM1MSAoVGhyZWFkaW5nLmNwcDoxMjkpCjExICBjb20uYXBwbGUuSmF2
YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODA1Njc1IFdURjo6d3RmVGhyZWFkRW50cnlQ
b2ludCh2b2lkKikgKyAyMSAoVGhyZWFkaW5nUHRocmVhZHMuY3BwOjIyMykKMTIgIGxpYnN5c3Rl
bV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSAr
IDM0MAoxMyAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2
ZCBfcHRocmVhZF9zdGFydCArIDM3NwoxNCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAg
CTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDE2OjogV1RGOjpB
dXRvbWF0aWNUaHJlYWQKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3
ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5
bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIg
ICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODA2NTEzIFdURjo6
VGhyZWFkQ29uZGl0aW9uOjp0aW1lZFdhaXQoV1RGOjpNdXRleCYsIGRvdWJsZSkgKyAxOTUgKFRo
cmVhZGluZ1B0aHJlYWRzLmNwcDo1NjkpCjMgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmN2M1ZjZiIFdURjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHlJ
bXBsKHZvaWQgY29uc3QqLCBXVEY6OlNjb3BlZExhbWJkYTxib29sICgpPiBjb25zdCYsIFdURjo6
U2NvcGVkTGFtYmRhPHZvaWQgKCk+IGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5
cGUgY29uc3QmKSArIDQxMSAoUGFya2luZ0xvdC5jcHA6NjA0KQo0ICAgY29tLmFwcGxlLkphdmFT
Y3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZWQyYmEwMCBXVEY6OlBhcmtpbmdMb3Q6OlBhcmtS
ZXN1bHQgV1RGOjpQYXJraW5nTG90OjpwYXJrQ29uZGl0aW9uYWxseTxib29sIFdURjo6Q29uZGl0
aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5
bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJkYScoKSwgYm9vbCBXVEY6OkNvbmRpdGlvbkJh
c2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWlj
Q2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygpPih2b2lkIGNvbnN0KiwgV1RGOjpMb2NrIGNv
bnN0JiwgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6
TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygp
IGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDk2IChQYXJr
aW5nTG90Lmg6ODEpCjUgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAw
NzFlZDJiOTBmIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihX
VEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgMTQzIChD
b25kaXRpb24uaDo4MSkKNiAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3ODBlOTkgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRGb3I8V1RGOjpMb2NrPihX
VEY6OkxvY2smLCBXVEY6OlNlY29uZHMpICsgMTA1IChDb25kaXRpb24uaDoxMjEpCjcgICBjb20u
YXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgyYTVlIFdURjo6QXV0b21h
dGljVGhyZWFkOjpzdGFydChXVEY6OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMDo6b3BlcmF0
b3IoKSgpIGNvbnN0ICsgNDc4IChBdXRvbWF0aWNUaHJlYWQuY3BwOjIwNikKOCAgIGNvbS5hcHBs
ZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ODI3MzkgV1RGOjpGdW5jdGlvbjx2
b2lkICgpPjo6Q2FsbGFibGVXcmFwcGVyPFdURjo6QXV0b21hdGljVGhyZWFkOjpzdGFydChXVEY6
OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMD46OmNhbGwoKSArIDI1IChGdW5jdGlvbi5oOjEw
MSkKOSAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3OGQyZmIg
V1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgMTM5IChGdW5jdGlv
bi5oOjU2KQoxMCAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdm
ZmViZiBXVEY6OlRocmVhZDo6ZW50cnlQb2ludChXVEY6OlRocmVhZDo6TmV3VGhyZWFkQ29udGV4
dCopICsgMzUxIChUaHJlYWRpbmcuY3BwOjEyOSkKMTEgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29y
ZSAgICAgIAkweDAwMDAwMDA3MWY4MDU2NzUgV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQq
KSArIDIxIChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6MjIzKQoxMiAgbGlic3lzdGVtX3B0aHJlYWQu
ZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsgMzQwCjEzICBs
aWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhyZWFk
X3N0YXJ0ICsgMzc3CjE0ICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2Zm
ZjcwZThhYzVkIHRocmVhZF9zdGFydCArIDEzCgpUaHJlYWQgMTc6OiBXVEY6OkF1dG9tYXRpY1Ro
cmVhZAowICAgbGlic3lzdGVtX2tlcm5lbC5keWxpYiAgICAgICAgCTB4MDAwMDdmZmY3MGQ0ZmNl
ZSBfX3BzeW5jaF9jdndhaXQgKyAxMAoxICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAg
CTB4MDAwMDdmZmY3MGU4YzY2MiBfcHRocmVhZF9jb25kX3dhaXQgKyA3MzIKMiAgIGNvbS5hcHBs
ZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MDY1MTMgV1RGOjpUaHJlYWRDb25k
aXRpb246OnRpbWVkV2FpdChXVEY6Ok11dGV4JiwgZG91YmxlKSArIDE5NSAoVGhyZWFkaW5nUHRo
cmVhZHMuY3BwOjU2OSkKMyAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3YzVmNmIgV1RGOjpQYXJraW5nTG90OjpwYXJrQ29uZGl0aW9uYWxseUltcGwodm9pZCBj
b25zdCosIFdURjo6U2NvcGVkTGFtYmRhPGJvb2wgKCk+IGNvbnN0JiwgV1RGOjpTY29wZWRMYW1i
ZGE8dm9pZCAoKT4gY29uc3QmLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYp
ICsgNDExIChQYXJraW5nTG90LmNwcDo2MDQpCjQgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUg
ICAgICAJMHgwMDAwMDAwNzFlZDJiYTAwIFdURjo6UGFya2luZ0xvdDo6UGFya1Jlc3VsdCBXVEY6
OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRpb25hbGx5PGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3
YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2Nr
VHlwZSBjb25zdCYpOjonbGFtYmRhJygpLCBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVu
dGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUg
Y29uc3QmKTo6J2xhbWJkYTAnKCk+KHZvaWQgY29uc3QqLCBXVEY6OkxvY2sgY29uc3QmLCBib29s
IFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RG
OjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJkYTAnKCkgY29uc3QmLCBX
VEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgOTYgKFBhcmtpbmdMb3QuaDo4
MSkKNSAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWVkMmI5MGYg
Ym9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYs
IFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyAxNDMgKENvbmRpdGlvbi5o
OjgxKQo2ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MGU5
OSBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdEZvcjxXVEY6OkxvY2s+KFdURjo6TG9jayYs
IFdURjo6U2Vjb25kcykgKyAxMDUgKENvbmRpdGlvbi5oOjEyMSkKNyAgIGNvbS5hcHBsZS5KYXZh
U2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ODJhNWUgV1RGOjpBdXRvbWF0aWNUaHJlYWQ6
OnN0YXJ0KFdURjo6QWJzdHJhY3RMb2NrZXIgY29uc3QmKTo6JF8wOjpvcGVyYXRvcigpKCkgY29u
c3QgKyA0NzggKEF1dG9tYXRpY1RocmVhZC5jcHA6MjA2KQo4ICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MjczOSBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpD
YWxsYWJsZVdyYXBwZXI8V1RGOjpBdXRvbWF0aWNUaHJlYWQ6OnN0YXJ0KFdURjo6QWJzdHJhY3RM
b2NrZXIgY29uc3QmKTo6JF8wPjo6Y2FsbCgpICsgMjUgKEZ1bmN0aW9uLmg6MTAxKQo5ICAgY29t
LmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4ZDJmYiBXVEY6OkZ1bmN0
aW9uPHZvaWQgKCk+OjpvcGVyYXRvcigpKCkgY29uc3QgKyAxMzkgKEZ1bmN0aW9uLmg6NTYpCjEw
ICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmN2ZmZWJmIFdURjo6
VGhyZWFkOjplbnRyeVBvaW50KFdURjo6VGhyZWFkOjpOZXdUaHJlYWRDb250ZXh0KikgKyAzNTEg
KFRocmVhZGluZy5jcHA6MTI5KQoxMSAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4
MDAwMDAwMDcxZjgwNTY3NSBXVEY6Ond0ZlRocmVhZEVudHJ5UG9pbnQodm9pZCopICsgMjEgKFRo
cmVhZGluZ1B0aHJlYWRzLmNwcDoyMjMpCjEyICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAg
ICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9wdGhyZWFkX2JvZHkgKyAzNDAKMTMgIGxpYnN5c3RlbV9w
dGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAz
NzcKMTQgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQg
dGhyZWFkX3N0YXJ0ICsgMTMKClRocmVhZCAxODo6IFdURjo6QXV0b21hdGljVGhyZWFkCjAgICBs
aWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNo
X2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2Zm
ZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRfd2FpdCArIDczMgoyICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgwNjUxMyBXVEY6OlRocmVhZENvbmRpdGlvbjo6dGlt
ZWRXYWl0KFdURjo6TXV0ZXgmLCBkb3VibGUpICsgMTk1IChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6
NTY5KQozICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdjNWY2
YiBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRpb25hbGx5SW1wbCh2b2lkIGNvbnN0KiwgV1RG
OjpTY29wZWRMYW1iZGE8Ym9vbCAoKT4gY29uc3QmLCBXVEY6OlNjb3BlZExhbWJkYTx2b2lkICgp
PiBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA0MTEgKFBh
cmtpbmdMb3QuY3BwOjYwNCkKNCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAw
MDAwMDA3MWVkMmJhMDAgV1RGOjpQYXJraW5nTG90OjpQYXJrUmVzdWx0IFdURjo6UGFya2luZ0xv
dDo6cGFya0NvbmRpdGlvbmFsbHk8Ym9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxX
VEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0
Jik6OidsYW1iZGEnKCksIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpM
b2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjon
bGFtYmRhMCcoKT4odm9pZCBjb25zdCosIFdURjo6TG9jayBjb25zdCYsIGJvb2wgV1RGOjpDb25k
aXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRo
RHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhMCcoKSBjb25zdCYsIFdURjo6VGltZVdp
dGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA5NiAoUGFya2luZ0xvdC5oOjgxKQo1ICAgY29t
LmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZWQyYjkwZiBib29sIFdURjo6
Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1l
V2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDE0MyAoQ29uZGl0aW9uLmg6ODEpCjYgICBj
b20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgwZTk5IGJvb2wgV1RG
OjpDb25kaXRpb25CYXNlOjp3YWl0Rm9yPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpTZWNv
bmRzKSArIDEwNSAoQ29uZGl0aW9uLmg6MTIxKQo3ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3Jl
ICAgICAgCTB4MDAwMDAwMDcxZjc4MmE1ZSBXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RG
OjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA6Om9wZXJhdG9yKCkoKSBjb25zdCArIDQ3OCAo
QXV0b21hdGljVGhyZWFkLmNwcDoyMDYpCjggICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmNzgyNzM5IFdURjo6RnVuY3Rpb248dm9pZCAoKT46OkNhbGxhYmxlV3Jh
cHBlcjxXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25z
dCYpOjokXzA+OjpjYWxsKCkgKyAyNSAoRnVuY3Rpb24uaDoxMDEpCjkgICBjb20uYXBwbGUuSmF2
YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzhkMmZiIFdURjo6RnVuY3Rpb248dm9pZCAo
KT46Om9wZXJhdG9yKCkoKSBjb25zdCArIDEzOSAoRnVuY3Rpb24uaDo1NikKMTAgIGNvbS5hcHBs
ZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ZmZlYmYgV1RGOjpUaHJlYWQ6OmVu
dHJ5UG9pbnQoV1RGOjpUaHJlYWQ6Ok5ld1RocmVhZENvbnRleHQqKSArIDM1MSAoVGhyZWFkaW5n
LmNwcDoxMjkpCjExICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFm
ODA1Njc1IFdURjo6d3RmVGhyZWFkRW50cnlQb2ludCh2b2lkKikgKyAyMSAoVGhyZWFkaW5nUHRo
cmVhZHMuY3BwOjIyMykKMTIgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3
ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0MAoxMyAgbGlic3lzdGVtX3B0aHJlYWQuZHls
aWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3NwoxNCAgbGli
c3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3Rh
cnQgKyAxMwoKVGhyZWFkIDE5OjogV1RGOjpBdXRvbWF0aWNUaHJlYWQKMCAgIGxpYnN5c3RlbV9r
ZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsg
MTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIg
X3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmODA2NTEzIFdURjo6VGhyZWFkQ29uZGl0aW9uOjp0aW1lZFdhaXQoV1RG
OjpNdXRleCYsIGRvdWJsZSkgKyAxOTUgKFRocmVhZGluZ1B0aHJlYWRzLmNwcDo1NjkpCjMgICBj
b20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmN2M1ZjZiIFdURjo6UGFy
a2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHlJbXBsKHZvaWQgY29uc3QqLCBXVEY6OlNjb3BlZExh
bWJkYTxib29sICgpPiBjb25zdCYsIFdURjo6U2NvcGVkTGFtYmRhPHZvaWQgKCk+IGNvbnN0Jiwg
V1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDQxMSAoUGFya2luZ0xvdC5j
cHA6NjA0KQo0ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZWQy
YmEwMCBXVEY6OlBhcmtpbmdMb3Q6OlBhcmtSZXN1bHQgV1RGOjpQYXJraW5nTG90OjpwYXJrQ29u
ZGl0aW9uYWxseTxib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4o
V1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJk
YScoKSwgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6
TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygp
Pih2b2lkIGNvbnN0KiwgV1RGOjpMb2NrIGNvbnN0JiwgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6
OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xv
Y2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygpIGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWND
bG9ja1R5cGUgY29uc3QmKSArIDk2IChQYXJraW5nTG90Lmg6ODEpCjUgICBjb20uYXBwbGUuSmF2
YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFlZDJiOTBmIGJvb2wgV1RGOjpDb25kaXRpb25C
YXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1p
Y0Nsb2NrVHlwZSBjb25zdCYpICsgMTQzIChDb25kaXRpb24uaDo4MSkKNiAgIGNvbS5hcHBsZS5K
YXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ODBlOTkgYm9vbCBXVEY6OkNvbmRpdGlv
bkJhc2U6OndhaXRGb3I8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlNlY29uZHMpICsgMTA1
IChDb25kaXRpb24uaDoxMjEpCjcgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgw
MDAwMDAwNzFmNzgyYTVlIFdURjo6QXV0b21hdGljVGhyZWFkOjpzdGFydChXVEY6OkFic3RyYWN0
TG9ja2VyIGNvbnN0Jik6OiRfMDo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgNDc4IChBdXRvbWF0aWNU
aHJlYWQuY3BwOjIwNikKOCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3ODI3MzkgV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6Q2FsbGFibGVXcmFwcGVyPFdURjo6
QXV0b21hdGljVGhyZWFkOjpzdGFydChXVEY6OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMD46
OmNhbGwoKSArIDI1IChGdW5jdGlvbi5oOjEwMSkKOSAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29y
ZSAgICAgIAkweDAwMDAwMDA3MWY3OGQyZmIgV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6b3BlcmF0
b3IoKSgpIGNvbnN0ICsgMTM5IChGdW5jdGlvbi5oOjU2KQoxMCAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdmZmViZiBXVEY6OlRocmVhZDo6ZW50cnlQb2ludChX
VEY6OlRocmVhZDo6TmV3VGhyZWFkQ29udGV4dCopICsgMzUxIChUaHJlYWRpbmcuY3BwOjEyOSkK
MTEgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MDU2NzUgV1RG
Ojp3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQqKSArIDIxIChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6
MjIzKQoxMiAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjZj
MSBfcHRocmVhZF9ib2R5ICsgMzQwCjEzICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJ
MHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjE0ICBsaWJzeXN0ZW1fcHRo
cmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9zdGFydCArIDEzCgpU
aHJlYWQgMjA6OiBXVEY6OkF1dG9tYXRpY1RocmVhZAowICAgbGlic3lzdGVtX2tlcm5lbC5keWxp
YiAgICAgICAgCTB4MDAwMDdmZmY3MGQ0ZmNlZSBfX3BzeW5jaF9jdndhaXQgKyAxMAoxICAgbGli
c3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YzY2MiBfcHRocmVhZF9j
b25kX3dhaXQgKyA3MzIKMiAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY4MDY1MTMgV1RGOjpUaHJlYWRDb25kaXRpb246OnRpbWVkV2FpdChXVEY6Ok11dGV4Jiwg
ZG91YmxlKSArIDE5NSAoVGhyZWFkaW5nUHRocmVhZHMuY3BwOjU2OSkKMyAgIGNvbS5hcHBsZS5K
YXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3YzVmNmIgV1RGOjpQYXJraW5nTG90Ojpw
YXJrQ29uZGl0aW9uYWxseUltcGwodm9pZCBjb25zdCosIFdURjo6U2NvcGVkTGFtYmRhPGJvb2wg
KCk+IGNvbnN0JiwgV1RGOjpTY29wZWRMYW1iZGE8dm9pZCAoKT4gY29uc3QmLCBXVEY6OlRpbWVX
aXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgNDExIChQYXJraW5nTG90LmNwcDo2MDQpCjQg
ICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFlZDJiYTAwIFdURjo6
UGFya2luZ0xvdDo6UGFya1Jlc3VsdCBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRpb25hbGx5
PGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2sm
LCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhJygpLCBib29s
IFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RG
OjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJkYTAnKCk+KHZvaWQgY29u
c3QqLCBXVEY6OkxvY2sgY29uc3QmLCBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGls
PFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29u
c3QmKTo6J2xhbWJkYTAnKCkgY29uc3QmLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBj
b25zdCYpICsgOTYgKFBhcmtpbmdMb3QuaDo4MSkKNSAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29y
ZSAgICAgIAkweDAwMDAwMDA3MWVkMmI5MGYgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRV
bnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBl
IGNvbnN0JikgKyAxNDMgKENvbmRpdGlvbi5oOjgxKQo2ICAgY29tLmFwcGxlLkphdmFTY3JpcHRD
b3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MGU5OSBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2Fp
dEZvcjxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6U2Vjb25kcykgKyAxMDUgKENvbmRpdGlv
bi5oOjEyMSkKNyAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3
ODJhNWUgV1RGOjpBdXRvbWF0aWNUaHJlYWQ6OnN0YXJ0KFdURjo6QWJzdHJhY3RMb2NrZXIgY29u
c3QmKTo6JF8wOjpvcGVyYXRvcigpKCkgY29uc3QgKyA0NzggKEF1dG9tYXRpY1RocmVhZC5jcHA6
MjA2KQo4ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4Mjcz
OSBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpDYWxsYWJsZVdyYXBwZXI8V1RGOjpBdXRvbWF0aWNU
aHJlYWQ6OnN0YXJ0KFdURjo6QWJzdHJhY3RMb2NrZXIgY29uc3QmKTo6JF8wPjo6Y2FsbCgpICsg
MjUgKEZ1bmN0aW9uLmg6MTAxKQo5ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4
MDAwMDAwMDcxZjc4ZDJmYiBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRvcigpKCkgY29u
c3QgKyAxMzkgKEZ1bmN0aW9uLmg6NTYpCjEwICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmN2ZmZWJmIFdURjo6VGhyZWFkOjplbnRyeVBvaW50KFdURjo6VGhyZWFk
OjpOZXdUaHJlYWRDb250ZXh0KikgKyAzNTEgKFRocmVhZGluZy5jcHA6MTI5KQoxMSAgY29tLmFw
cGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgwNTY3NSBXVEY6Ond0ZlRocmVh
ZEVudHJ5UG9pbnQodm9pZCopICsgMjEgKFRocmVhZGluZ1B0aHJlYWRzLmNwcDoyMjMpCjEyICBs
aWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9wdGhyZWFk
X2JvZHkgKyAzNDAKMTMgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZm
NzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAzNzcKMTQgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGli
ICAgICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRocmVhZCAyMTo6
IFdURjo6QXV0b21hdGljVGhyZWFkCjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJ
MHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRo
cmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRfd2FpdCAr
IDczMgoyICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgwNjUx
MyBXVEY6OlRocmVhZENvbmRpdGlvbjo6dGltZWRXYWl0KFdURjo6TXV0ZXgmLCBkb3VibGUpICsg
MTk1IChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6NTY5KQozICAgY29tLmFwcGxlLkphdmFTY3JpcHRD
b3JlICAgICAgCTB4MDAwMDAwMDcxZjdjNWY2YiBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRp
b25hbGx5SW1wbCh2b2lkIGNvbnN0KiwgV1RGOjpTY29wZWRMYW1iZGE8Ym9vbCAoKT4gY29uc3Qm
LCBXVEY6OlNjb3BlZExhbWJkYTx2b2lkICgpPiBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWlj
Q2xvY2tUeXBlIGNvbnN0JikgKyA0MTEgKFBhcmtpbmdMb3QuY3BwOjYwNCkKNCAgIGNvbS5hcHBs
ZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWVkMmJhMDAgV1RGOjpQYXJraW5nTG90
OjpQYXJrUmVzdWx0IFdURjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHk8Ym9vbCBXVEY6
OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGlt
ZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEnKCksIGJvb2wgV1RGOjpDb25k
aXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRo
RHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhMCcoKT4odm9pZCBjb25zdCosIFdURjo6
TG9jayBjb25zdCYsIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2Nr
PihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFt
YmRhMCcoKSBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA5
NiAoUGFya2luZ0xvdC5oOjgxKQo1ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4
MDAwMDAwMDcxZWQyYjkwZiBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6
TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSAr
IDE0MyAoQ29uZGl0aW9uLmg6ODEpCjYgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJ
MHgwMDAwMDAwNzFmNzgwZTk5IGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0Rm9yPFdURjo6
TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpTZWNvbmRzKSArIDEwNSAoQ29uZGl0aW9uLmg6MTIxKQo3
ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MmE1ZSBXVEY6
OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA6
Om9wZXJhdG9yKCkoKSBjb25zdCArIDQ3OCAoQXV0b21hdGljVGhyZWFkLmNwcDoyMDYpCjggICBj
b20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgyNzM5IFdURjo6RnVu
Y3Rpb248dm9pZCAoKT46OkNhbGxhYmxlV3JhcHBlcjxXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3Rh
cnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA+OjpjYWxsKCkgKyAyNSAoRnVuY3Rp
b24uaDoxMDEpCjkgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFm
NzhkMmZiIFdURjo6RnVuY3Rpb248dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCArIDEzOSAo
RnVuY3Rpb24uaDo1NikKMTAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3ZmZlYmYgV1RGOjpUaHJlYWQ6OmVudHJ5UG9pbnQoV1RGOjpUaHJlYWQ6Ok5ld1RocmVh
ZENvbnRleHQqKSArIDM1MSAoVGhyZWFkaW5nLmNwcDoxMjkpCjExICBjb20uYXBwbGUuSmF2YVNj
cmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODA1Njc1IFdURjo6d3RmVGhyZWFkRW50cnlQb2lu
dCh2b2lkKikgKyAyMSAoVGhyZWFkaW5nUHRocmVhZHMuY3BwOjIyMykKMTIgIGxpYnN5c3RlbV9w
dGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0
MAoxMyAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBf
cHRocmVhZF9zdGFydCArIDM3NwoxNCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4
MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDIyIENyYXNoZWQ6OiBX
ZWJDb3JlOiBXb3JrZXIKMCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3NzQzZjQgV1RGQ3Jhc2ggKyAzNiAoQXNzZXJ0aW9ucy5jcHA6MjczKQoxICAgY29tLmFw
cGxlLldlYkNvcmUgICAgICAgICAgICAgCTB4MDAwMDAwMDcxMzE5YWFiNiBXZWJDb3JlOjpXb3Jr
ZXJUaHJlYWQ6OndvcmtlclRocmVhZCgpICsgMTg0NiAoV29ya2VyVGhyZWFkLmNwcDoyMTEpCjIg
ICBjb20uYXBwbGUuV2ViQ29yZSAgICAgICAgICAgICAJMHgwMDAwMDAwNzEzMWE2YTQ4IFdlYkNv
cmU6OldvcmtlclRocmVhZDo6c3RhcnQoV1RGOjpGdW5jdGlvbjx2b2lkIChXVEY6OlN0cmluZyBj
b25zdCYpPiYmKTo6JF8xMjo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgMjQgKFdvcmtlclRocmVhZC5j
cHA6MTQ1KQozICAgY29tLmFwcGxlLldlYkNvcmUgICAgICAgICAgICAgCTB4MDAwMDAwMDcxMzFh
NmEwOSBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpDYWxsYWJsZVdyYXBwZXI8V2ViQ29yZTo6V29y
a2VyVGhyZWFkOjpzdGFydChXVEY6OkZ1bmN0aW9uPHZvaWQgKFdURjo6U3RyaW5nIGNvbnN0Jik+
JiYpOjokXzEyPjo6Y2FsbCgpICsgMjUgKEZ1bmN0aW9uLmg6MTAxKQo0ICAgY29tLmFwcGxlLkph
dmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4ZDJmYiBXVEY6OkZ1bmN0aW9uPHZvaWQg
KCk+OjpvcGVyYXRvcigpKCkgY29uc3QgKyAxMzkgKEZ1bmN0aW9uLmg6NTYpCjUgICBjb20uYXBw
bGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmN2ZmZWJmIFdURjo6VGhyZWFkOjpl
bnRyeVBvaW50KFdURjo6VGhyZWFkOjpOZXdUaHJlYWRDb250ZXh0KikgKyAzNTEgKFRocmVhZGlu
Zy5jcHA6MTI5KQo2ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
ZjgwNTY3NSBXVEY6Ond0ZlRocmVhZEVudHJ5UG9pbnQodm9pZCopICsgMjEgKFRocmVhZGluZ1B0
aHJlYWRzLmNwcDoyMjMpCjcgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAw
N2ZmZjcwZThiNmMxIF9wdGhyZWFkX2JvZHkgKyAzNDAKOCAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5
bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAzNzcKOSAgIGxp
YnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0
YXJ0ICsgMTMKClRocmVhZCAyMzoKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkw
eDAwMDA3ZmZmNzBkNTA1NjIgX193b3JrcV9rZXJucmV0dXJuICsgMTAKMSAgIGxpYnN5c3RlbV9w
dGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGIwNmEgX3B0aHJlYWRfd3F0aHJlYWQg
KyAxMDM1CjIgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThh
YzRkIHN0YXJ0X3dxdGhyZWFkICsgMTMKClRocmVhZCAyNDo6IFdURjo6QXV0b21hdGljVGhyZWFk
CjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDRmY2VlIF9f
cHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgw
MDAwN2ZmZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRfd2FpdCArIDczMgoyICAgY29tLmFwcGxlLkph
dmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgwNjUxMyBXVEY6OlRocmVhZENvbmRpdGlv
bjo6dGltZWRXYWl0KFdURjo6TXV0ZXgmLCBkb3VibGUpICsgMTk1IChUaHJlYWRpbmdQdGhyZWFk
cy5jcHA6NTY5KQozICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
ZjdjNWY2YiBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRpb25hbGx5SW1wbCh2b2lkIGNvbnN0
KiwgV1RGOjpTY29wZWRMYW1iZGE8Ym9vbCAoKT4gY29uc3QmLCBXVEY6OlNjb3BlZExhbWJkYTx2
b2lkICgpPiBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA0
MTEgKFBhcmtpbmdMb3QuY3BwOjYwNCkKNCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAg
IAkweDAwMDAwMDA3MWVkMmJhMDAgV1RGOjpQYXJraW5nTG90OjpQYXJrUmVzdWx0IFdURjo6UGFy
a2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHk8Ym9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRV
bnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBl
IGNvbnN0Jik6OidsYW1iZGEnKCksIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8
V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25z
dCYpOjonbGFtYmRhMCcoKT4odm9pZCBjb25zdCosIFdURjo6TG9jayBjb25zdCYsIGJvb2wgV1RG
OjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRp
bWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhMCcoKSBjb25zdCYsIFdURjo6
VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA5NiAoUGFya2luZ0xvdC5oOjgxKQo1
ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZWQyYjkwZiBib29s
IFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RG
OjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDE0MyAoQ29uZGl0aW9uLmg6ODEp
CjYgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgwZTk5IGJv
b2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0Rm9yPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RG
OjpTZWNvbmRzKSArIDEwNSAoQ29uZGl0aW9uLmg6MTIxKQo3ICAgY29tLmFwcGxlLkphdmFTY3Jp
cHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MmE1ZSBXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3Rh
cnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA6Om9wZXJhdG9yKCkoKSBjb25zdCAr
IDQ3OCAoQXV0b21hdGljVGhyZWFkLmNwcDoyMDYpCjggICBjb20uYXBwbGUuSmF2YVNjcmlwdENv
cmUgICAgICAJMHgwMDAwMDAwNzFmNzgyNzM5IFdURjo6RnVuY3Rpb248dm9pZCAoKT46OkNhbGxh
YmxlV3JhcHBlcjxXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tl
ciBjb25zdCYpOjokXzA+OjpjYWxsKCkgKyAyNSAoRnVuY3Rpb24uaDoxMDEpCjkgICBjb20uYXBw
bGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzhkMmZiIFdURjo6RnVuY3Rpb248
dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCArIDEzOSAoRnVuY3Rpb24uaDo1NikKMTAgIGNv
bS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ZmZlYmYgV1RGOjpUaHJl
YWQ6OmVudHJ5UG9pbnQoV1RGOjpUaHJlYWQ6Ok5ld1RocmVhZENvbnRleHQqKSArIDM1MSAoVGhy
ZWFkaW5nLmNwcDoxMjkpCjExICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAw
MDAwNzFmODA1Njc1IFdURjo6d3RmVGhyZWFkRW50cnlQb2ludCh2b2lkKikgKyAyMSAoVGhyZWFk
aW5nUHRocmVhZHMuY3BwOjIyMykKMTIgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkw
eDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9keSArIDM0MAoxMyAgbGlic3lzdGVtX3B0aHJl
YWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3Nwox
NCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJl
YWRfc3RhcnQgKyAxMwoKVGhyZWFkIDI1OjogV1RGOjpBdXRvbWF0aWNUaHJlYWQKMCAgIGxpYnN5
c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAwMDA3ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3
YWl0ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBl
OGM2NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMyCjIgICBjb20uYXBwbGUuSmF2YVNjcmlwdENv
cmUgICAgICAJMHgwMDAwMDAwNzFmODA2NTEzIFdURjo6VGhyZWFkQ29uZGl0aW9uOjp0aW1lZFdh
aXQoV1RGOjpNdXRleCYsIGRvdWJsZSkgKyAxOTUgKFRocmVhZGluZ1B0aHJlYWRzLmNwcDo1Njkp
CjMgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmN2M1ZjZiIFdU
Rjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHlJbXBsKHZvaWQgY29uc3QqLCBXVEY6OlNj
b3BlZExhbWJkYTxib29sICgpPiBjb25zdCYsIFdURjo6U2NvcGVkTGFtYmRhPHZvaWQgKCk+IGNv
bnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDQxMSAoUGFya2lu
Z0xvdC5jcHA6NjA0KQo0ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAw
MDcxZWQyYmEwMCBXVEY6OlBhcmtpbmdMb3Q6OlBhcmtSZXN1bHQgV1RGOjpQYXJraW5nTG90Ojpw
YXJrQ29uZGl0aW9uYWxseTxib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6
TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6
J2xhbWJkYScoKSwgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+
KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1i
ZGEwJygpPih2b2lkIGNvbnN0KiwgV1RGOjpMb2NrIGNvbnN0JiwgYm9vbCBXVEY6OkNvbmRpdGlv
bkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5h
bWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygpIGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5
bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDk2IChQYXJraW5nTG90Lmg6ODEpCjUgICBjb20uYXBw
bGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFlZDJiOTBmIGJvb2wgV1RGOjpDb25k
aXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRo
RHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgMTQzIChDb25kaXRpb24uaDo4MSkKNiAgIGNvbS5h
cHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ODBlOTkgYm9vbCBXVEY6OkNv
bmRpdGlvbkJhc2U6OndhaXRGb3I8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlNlY29uZHMp
ICsgMTA1IChDb25kaXRpb24uaDoxMjEpCjcgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAg
ICAJMHgwMDAwMDAwNzFmNzgyYTVlIFdURjo6QXV0b21hdGljVGhyZWFkOjpzdGFydChXVEY6OkFi
c3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMDo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgNDc4IChBdXRv
bWF0aWNUaHJlYWQuY3BwOjIwNikKOCAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkw
eDAwMDAwMDA3MWY3ODI3MzkgV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6Q2FsbGFibGVXcmFwcGVy
PFdURjo6QXV0b21hdGljVGhyZWFkOjpzdGFydChXVEY6OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6
OiRfMD46OmNhbGwoKSArIDI1IChGdW5jdGlvbi5oOjEwMSkKOSAgIGNvbS5hcHBsZS5KYXZhU2Ny
aXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3OGQyZmIgV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6
b3BlcmF0b3IoKSgpIGNvbnN0ICsgMTM5IChGdW5jdGlvbi5oOjU2KQoxMCAgY29tLmFwcGxlLkph
dmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdmZmViZiBXVEY6OlRocmVhZDo6ZW50cnlQ
b2ludChXVEY6OlRocmVhZDo6TmV3VGhyZWFkQ29udGV4dCopICsgMzUxIChUaHJlYWRpbmcuY3Bw
OjEyOSkKMTEgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MDU2
NzUgV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQqKSArIDIxIChUaHJlYWRpbmdQdGhyZWFk
cy5jcHA6MjIzKQoxMiAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3
MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsgMzQwCjEzICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAg
ICAgICAJMHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhyZWFkX3N0YXJ0ICsgMzc3CjE0ICBsaWJzeXN0
ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThhYzVkIHRocmVhZF9zdGFydCAr
IDEzCgpUaHJlYWQgMjY6OiBXVEY6OkF1dG9tYXRpY1RocmVhZAowICAgbGlic3lzdGVtX2tlcm5l
bC5keWxpYiAgICAgICAgCTB4MDAwMDdmZmY3MGQ0ZmNlZSBfX3BzeW5jaF9jdndhaXQgKyAxMAox
ICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YzY2MiBfcHRo
cmVhZF9jb25kX3dhaXQgKyA3MzIKMiAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkw
eDAwMDAwMDA3MWY4MDY1MTMgV1RGOjpUaHJlYWRDb25kaXRpb246OnRpbWVkV2FpdChXVEY6Ok11
dGV4JiwgZG91YmxlKSArIDE5NSAoVGhyZWFkaW5nUHRocmVhZHMuY3BwOjU2OSkKMyAgIGNvbS5h
cHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3YzVmNmIgV1RGOjpQYXJraW5n
TG90OjpwYXJrQ29uZGl0aW9uYWxseUltcGwodm9pZCBjb25zdCosIFdURjo6U2NvcGVkTGFtYmRh
PGJvb2wgKCk+IGNvbnN0JiwgV1RGOjpTY29wZWRMYW1iZGE8dm9pZCAoKT4gY29uc3QmLCBXVEY6
OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgNDExIChQYXJraW5nTG90LmNwcDo2
MDQpCjQgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFlZDJiYTAw
IFdURjo6UGFya2luZ0xvdDo6UGFya1Jlc3VsdCBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtDb25kaXRp
b25hbGx5PGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6
OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhJygp
LCBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2Nr
JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJkYTAnKCk+KHZv
aWQgY29uc3QqLCBXVEY6OkxvY2sgY29uc3QmLCBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2Fp
dFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5
cGUgY29uc3QmKTo6J2xhbWJkYTAnKCkgY29uc3QmLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2Nr
VHlwZSBjb25zdCYpICsgOTYgKFBhcmtpbmdMb3QuaDo4MSkKNSAgIGNvbS5hcHBsZS5KYXZhU2Ny
aXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWVkMmI5MGYgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6
OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xv
Y2tUeXBlIGNvbnN0JikgKyAxNDMgKENvbmRpdGlvbi5oOjgxKQo2ICAgY29tLmFwcGxlLkphdmFT
Y3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MGU5OSBib29sIFdURjo6Q29uZGl0aW9uQmFz
ZTo6d2FpdEZvcjxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6U2Vjb25kcykgKyAxMDUgKENv
bmRpdGlvbi5oOjEyMSkKNyAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAw
MDA3MWY3ODJhNWUgV1RGOjpBdXRvbWF0aWNUaHJlYWQ6OnN0YXJ0KFdURjo6QWJzdHJhY3RMb2Nr
ZXIgY29uc3QmKTo6JF8wOjpvcGVyYXRvcigpKCkgY29uc3QgKyA0NzggKEF1dG9tYXRpY1RocmVh
ZC5jcHA6MjA2KQo4ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
Zjc4MjczOSBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpDYWxsYWJsZVdyYXBwZXI8V1RGOjpBdXRv
bWF0aWNUaHJlYWQ6OnN0YXJ0KFdURjo6QWJzdHJhY3RMb2NrZXIgY29uc3QmKTo6JF8wPjo6Y2Fs
bCgpICsgMjUgKEZ1bmN0aW9uLmg6MTAxKQo5ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAg
ICAgCTB4MDAwMDAwMDcxZjc4ZDJmYiBXVEY6OkZ1bmN0aW9uPHZvaWQgKCk+OjpvcGVyYXRvcigp
KCkgY29uc3QgKyAxMzkgKEZ1bmN0aW9uLmg6NTYpCjEwICBjb20uYXBwbGUuSmF2YVNjcmlwdENv
cmUgICAgICAJMHgwMDAwMDAwNzFmN2ZmZWJmIFdURjo6VGhyZWFkOjplbnRyeVBvaW50KFdURjo6
VGhyZWFkOjpOZXdUaHJlYWRDb250ZXh0KikgKyAzNTEgKFRocmVhZGluZy5jcHA6MTI5KQoxMSAg
Y29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjgwNTY3NSBXVEY6Ond0
ZlRocmVhZEVudHJ5UG9pbnQodm9pZCopICsgMjEgKFRocmVhZGluZ1B0aHJlYWRzLmNwcDoyMjMp
CjEyICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNmMxIF9w
dGhyZWFkX2JvZHkgKyAzNDAKMTMgIGxpYnN5c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAw
MDA3ZmZmNzBlOGI1NmQgX3B0aHJlYWRfc3RhcnQgKyAzNzcKMTQgIGxpYnN5c3RlbV9wdGhyZWFk
LmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGFjNWQgdGhyZWFkX3N0YXJ0ICsgMTMKClRocmVh
ZCAyNzo6IFdURjo6QXV0b21hdGljVGhyZWFkCjAgICBsaWJzeXN0ZW1fa2VybmVsLmR5bGliICAg
ICAgICAJMHgwMDAwN2ZmZjcwZDRmY2VlIF9fcHN5bmNoX2N2d2FpdCArIDEwCjEgICBsaWJzeXN0
ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThjNjYyIF9wdGhyZWFkX2NvbmRf
d2FpdCArIDczMgoyICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
ZjgwNjUxMyBXVEY6OlRocmVhZENvbmRpdGlvbjo6dGltZWRXYWl0KFdURjo6TXV0ZXgmLCBkb3Vi
bGUpICsgMTk1IChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6NTY5KQozICAgY29tLmFwcGxlLkphdmFT
Y3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjdjNWY2YiBXVEY6OlBhcmtpbmdMb3Q6OnBhcmtD
b25kaXRpb25hbGx5SW1wbCh2b2lkIGNvbnN0KiwgV1RGOjpTY29wZWRMYW1iZGE8Ym9vbCAoKT4g
Y29uc3QmLCBXVEY6OlNjb3BlZExhbWJkYTx2b2lkICgpPiBjb25zdCYsIFdURjo6VGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlIGNvbnN0JikgKyA0MTEgKFBhcmtpbmdMb3QuY3BwOjYwNCkKNCAgIGNv
bS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWVkMmJhMDAgV1RGOjpQYXJr
aW5nTG90OjpQYXJrUmVzdWx0IFdURjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFsbHk8Ym9v
bCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdU
Rjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEnKCksIGJvb2wgV1RG
OjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRp
bWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpOjonbGFtYmRhMCcoKT4odm9pZCBjb25zdCos
IFdURjo6TG9jayBjb25zdCYsIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RG
OjpMb2NrPihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYp
OjonbGFtYmRhMCcoKSBjb25zdCYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0
JikgKyA5NiAoUGFya2luZ0xvdC5oOjgxKQo1ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAg
ICAgCTB4MDAwMDAwMDcxZWQyYjkwZiBib29sIFdURjo6Q29uZGl0aW9uQmFzZTo6d2FpdFVudGls
PFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29u
c3QmKSArIDE0MyAoQ29uZGl0aW9uLmg6ODEpCjYgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUg
ICAgICAJMHgwMDAwMDAwNzFmNzgwZTk5IGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0Rm9y
PFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpTZWNvbmRzKSArIDEwNSAoQ29uZGl0aW9uLmg6
MTIxKQo3ICAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZjc4MmE1
ZSBXVEY6OkF1dG9tYXRpY1RocmVhZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYp
OjokXzA6Om9wZXJhdG9yKCkoKSBjb25zdCArIDQ3OCAoQXV0b21hdGljVGhyZWFkLmNwcDoyMDYp
CjggICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgyNzM5IFdU
Rjo6RnVuY3Rpb248dm9pZCAoKT46OkNhbGxhYmxlV3JhcHBlcjxXVEY6OkF1dG9tYXRpY1RocmVh
ZDo6c3RhcnQoV1RGOjpBYnN0cmFjdExvY2tlciBjb25zdCYpOjokXzA+OjpjYWxsKCkgKyAyNSAo
RnVuY3Rpb24uaDoxMDEpCjkgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAw
MDAwNzFmNzhkMmZiIFdURjo6RnVuY3Rpb248dm9pZCAoKT46Om9wZXJhdG9yKCkoKSBjb25zdCAr
IDEzOSAoRnVuY3Rpb24uaDo1NikKMTAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkw
eDAwMDAwMDA3MWY3ZmZlYmYgV1RGOjpUaHJlYWQ6OmVudHJ5UG9pbnQoV1RGOjpUaHJlYWQ6Ok5l
d1RocmVhZENvbnRleHQqKSArIDM1MSAoVGhyZWFkaW5nLmNwcDoxMjkpCjExICBjb20uYXBwbGUu
SmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODA1Njc1IFdURjo6d3RmVGhyZWFkRW50
cnlQb2ludCh2b2lkKikgKyAyMSAoVGhyZWFkaW5nUHRocmVhZHMuY3BwOjIyMykKMTIgIGxpYnN5
c3RlbV9wdGhyZWFkLmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGI2YzEgX3B0aHJlYWRfYm9k
eSArIDM0MAoxMyAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4
YjU2ZCBfcHRocmVhZF9zdGFydCArIDM3NwoxNCAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIgICAg
ICAgCTB4MDAwMDdmZmY3MGU4YWM1ZCB0aHJlYWRfc3RhcnQgKyAxMwoKVGhyZWFkIDI4OjogV1RG
OjpBdXRvbWF0aWNUaHJlYWQKMCAgIGxpYnN5c3RlbV9rZXJuZWwuZHlsaWIgICAgICAgIAkweDAw
MDA3ZmZmNzBkNGZjZWUgX19wc3luY2hfY3Z3YWl0ICsgMTAKMSAgIGxpYnN5c3RlbV9wdGhyZWFk
LmR5bGliICAgICAgIAkweDAwMDA3ZmZmNzBlOGM2NjIgX3B0aHJlYWRfY29uZF93YWl0ICsgNzMy
CjIgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmODA2NTEzIFdU
Rjo6VGhyZWFkQ29uZGl0aW9uOjp0aW1lZFdhaXQoV1RGOjpNdXRleCYsIGRvdWJsZSkgKyAxOTUg
KFRocmVhZGluZ1B0aHJlYWRzLmNwcDo1NjkpCjMgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUg
ICAgICAJMHgwMDAwMDAwNzFmN2M1ZjZiIFdURjo6UGFya2luZ0xvdDo6cGFya0NvbmRpdGlvbmFs
bHlJbXBsKHZvaWQgY29uc3QqLCBXVEY6OlNjb3BlZExhbWJkYTxib29sICgpPiBjb25zdCYsIFdU
Rjo6U2NvcGVkTGFtYmRhPHZvaWQgKCk+IGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9j
a1R5cGUgY29uc3QmKSArIDQxMSAoUGFya2luZ0xvdC5jcHA6NjA0KQo0ICAgY29tLmFwcGxlLkph
dmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcxZWQyYmEwMCBXVEY6OlBhcmtpbmdMb3Q6OlBh
cmtSZXN1bHQgV1RGOjpQYXJraW5nTG90OjpwYXJrQ29uZGl0aW9uYWxseTxib29sIFdURjo6Q29u
ZGl0aW9uQmFzZTo6d2FpdFVudGlsPFdURjo6TG9jaz4oV1RGOjpMb2NrJiwgV1RGOjpUaW1lV2l0
aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKTo6J2xhbWJkYScoKSwgYm9vbCBXVEY6OkNvbmRpdGlv
bkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdURjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5h
bWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEwJygpPih2b2lkIGNvbnN0KiwgV1RGOjpMb2Nr
IGNvbnN0JiwgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRVbnRpbDxXVEY6OkxvY2s+KFdU
Rjo6TG9jayYsIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlIGNvbnN0Jik6OidsYW1iZGEw
JygpIGNvbnN0JiwgV1RGOjpUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUgY29uc3QmKSArIDk2IChQ
YXJraW5nTG90Lmg6ODEpCjUgICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAw
MDAwNzFlZDJiOTBmIGJvb2wgV1RGOjpDb25kaXRpb25CYXNlOjp3YWl0VW50aWw8V1RGOjpMb2Nr
PihXVEY6OkxvY2smLCBXVEY6OlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZSBjb25zdCYpICsgMTQz
IChDb25kaXRpb24uaDo4MSkKNiAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAw
MDAwMDA3MWY3ODBlOTkgYm9vbCBXVEY6OkNvbmRpdGlvbkJhc2U6OndhaXRGb3I8V1RGOjpMb2Nr
PihXVEY6OkxvY2smLCBXVEY6OlNlY29uZHMpICsgMTA1IChDb25kaXRpb24uaDoxMjEpCjcgICBj
b20uYXBwbGUuSmF2YVNjcmlwdENvcmUgICAgICAJMHgwMDAwMDAwNzFmNzgyYTVlIFdURjo6QXV0
b21hdGljVGhyZWFkOjpzdGFydChXVEY6OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMDo6b3Bl
cmF0b3IoKSgpIGNvbnN0ICsgNDc4IChBdXRvbWF0aWNUaHJlYWQuY3BwOjIwNikKOCAgIGNvbS5h
cHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3ODI3MzkgV1RGOjpGdW5jdGlv
bjx2b2lkICgpPjo6Q2FsbGFibGVXcmFwcGVyPFdURjo6QXV0b21hdGljVGhyZWFkOjpzdGFydChX
VEY6OkFic3RyYWN0TG9ja2VyIGNvbnN0Jik6OiRfMD46OmNhbGwoKSArIDI1IChGdW5jdGlvbi5o
OjEwMSkKOSAgIGNvbS5hcHBsZS5KYXZhU2NyaXB0Q29yZSAgICAgIAkweDAwMDAwMDA3MWY3OGQy
ZmIgV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6b3BlcmF0b3IoKSgpIGNvbnN0ICsgMTM5IChGdW5j
dGlvbi5oOjU2KQoxMCAgY29tLmFwcGxlLkphdmFTY3JpcHRDb3JlICAgICAgCTB4MDAwMDAwMDcx
ZjdmZmViZiBXVEY6OlRocmVhZDo6ZW50cnlQb2ludChXVEY6OlRocmVhZDo6TmV3VGhyZWFkQ29u
dGV4dCopICsgMzUxIChUaHJlYWRpbmcuY3BwOjEyOSkKMTEgIGNvbS5hcHBsZS5KYXZhU2NyaXB0
Q29yZSAgICAgIAkweDAwMDAwMDA3MWY4MDU2NzUgV1RGOjp3dGZUaHJlYWRFbnRyeVBvaW50KHZv
aWQqKSArIDIxIChUaHJlYWRpbmdQdGhyZWFkcy5jcHA6MjIzKQoxMiAgbGlic3lzdGVtX3B0aHJl
YWQuZHlsaWIgICAgICAgCTB4MDAwMDdmZmY3MGU4YjZjMSBfcHRocmVhZF9ib2R5ICsgMzQwCjEz
ICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThiNTZkIF9wdGhy
ZWFkX3N0YXJ0ICsgMzc3CjE0ICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAw
N2ZmZjcwZThhYzVkIHRocmVhZF9zdGFydCArIDEzCgpUaHJlYWQgMjk6CjAgICBsaWJzeXN0ZW1f
a2VybmVsLmR5bGliICAgICAgICAJMHgwMDAwN2ZmZjcwZDUwNTYyIF9fd29ya3Ffa2VybnJldHVy
biArIDEwCjEgICBsaWJzeXN0ZW1fcHRocmVhZC5keWxpYiAgICAgICAJMHgwMDAwN2ZmZjcwZThi
MDZhIF9wdGhyZWFkX3dxdGhyZWFkICsgMTAzNQoyICAgbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIg
ICAgICAgCTB4MDAwMDdmZmY3MGU4YWM0ZCBzdGFydF93cXRocmVhZCArIDEzCgpUaHJlYWQgMjIg
Y3Jhc2hlZCB3aXRoIFg4NiBUaHJlYWQgU3RhdGUgKDY0LWJpdCk6CiAgcmF4OiAweDAwMDAwMDAw
YmJhZGJlZWYgIHJieDogMHgwMDAwNzAwMDBkN2YyMDAxICByY3g6IDB4MDAwMDAwMDBiYmFkYmVl
ZiAgcmR4OiAweGM1NTMwNzkwYTMyYTAwMjkKICByZGk6IDB4YzU1MzA3OTBhMzJhMDAyOSAgcnNp
OiAweDAwMDAwMDA3MWZkYzBjMDAgIHJicDogMHgwMDAwNzAwMDBkN2YxYWIwICByc3A6IDB4MDAw
MDcwMDAwZDdmMWFiMAogICByODogMHgwMDAwN2ZmZmE5OWMzMDQ4ICAgcjk6IDB4MDAwMDAwMDAw
MDAwMDA0MCAgcjEwOiAweDAwMDA3ZmZmYTk5YzMwNDAgIHIxMTogMHhmZmZmZmZmZmZmZmZmZmZm
CiAgcjEyOiAweDAwMDAwMDA3MWY4MDU2NjAgIHIxMzogMHgwMDAwMDAwMDAwMDAwMDAwICByMTQ6
IDB4MDAwMDAwMDczYjM2ZWU1MCAgcjE1OiAweDAwMDAwMDAwMDAwMDAwMDAKICByaXA6IDB4MDAw
MDAwMDcxZjc3NDNmNCAgcmZsOiAweDAwMDAwMDAwMDAwMTAyMDYgIGNyMjogMHgwMDAwMDAwMGJi
YWRiZWVmCiAgCkxvZ2ljYWwgQ1BVOiAgICAgMApFcnJvciBDb2RlOiAgICAgIDB4MDAwMDAwMDYK
VHJhcCBOdW1iZXI6ICAgICAxNAoKCkJpbmFyeSBJbWFnZXM6CiAgICAgICAweDEwOTFjNDAwMCAt
ICAgICAgICAweDEwOTFjNWZmMyAgY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50ICg2MDUrIC0g
NjA1LjEuMTUrKSA8REMxMkYxMTctRjZCMS0zMzlCLUJCOEMtNDZFNkU2OUNFMDY0PiAvVm9sdW1l
cy9WT0xVTUUvKi9XZWJLaXQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvWFBDU2VydmljZXMvY29tLmFw
cGxlLldlYktpdC5XZWJDb250ZW50LnhwYy9Db250ZW50cy9NYWNPUy9jb20uYXBwbGUuV2ViS2l0
LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQKICAgICAgIDB4MTA5MWQxMDAwIC0gICAgICAgIDB4MTA5
MWQxZmYzICtXZWJQcm9jZXNzU2hpbS5keWxpYiAoMCkgPEMyMEEwRTdELTNBREYtMzdENS04RkQ1
LTg4Njk1QThBOTk2RD4gL1ZvbHVtZXMvVk9MVU1FLyovV2ViUHJvY2Vzc1NoaW0uZHlsaWIKICAg
ICAgIDB4MTA5MWRkMDAwIC0gICAgICAgIDB4MTBhNmZlZmY3ICBjb20uYXBwbGUuV2ViS2l0ICg2
MDUrIC0gNjA1LjEuMTYrKSA8MUM1NDNEMzYtQzg0Qi0zNDdELTlDN0YtMjY0Njg3RUVEOUI0PiAv
Vm9sdW1lcy9WT0xVTUUvKi9XZWJLaXQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvV2ViS2l0CiAgICAg
ICAweDEwZDI4NzAwMCAtICAgICAgICAweDEwZDZiNGZmNyAgY29tLmFwcGxlLldlYktpdExlZ2Fj
eSAoNjA1KyAtIDYwNS4xLjE2KykgPDc1QTQxMTA1LTlFRkQtMzdDMS04QjJELUU3RkUyMUVGMDAw
ND4gL1ZvbHVtZXMvVk9MVU1FLyovV2ViS2l0TGVnYWN5LmZyYW1ld29yay9WZXJzaW9ucy9BL1dl
YktpdExlZ2FjeQogICAgICAgMHgxMTZhMjQwMDAgLSAgICAgICAgMHgxMTZhNmU5OGYgIGR5bGQg
KDUxOS4yLjIpIDw2Njk1RjMwQi00RTg4LTNDMEItOTg2Ny03RDczOEM0NEEzRTY+IC91c3IvbGli
L2R5bGQKICAgICAgIDB4NzEwMDAyMDAwIC0gICAgICAgIDB4NzE0NDRkZmZiICBjb20uYXBwbGUu
V2ViQ29yZSAoNjA1KyAtIDYwNS4xLjE2KykgPENFMDczQkJFLTA0RUYtM0IwNi1CRjQxLTVGQzM3
MTMzNDkzOT4gL1ZvbHVtZXMvVk9MVU1FLyovV2ViQ29yZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9X
ZWJDb3JlCiAgICAgICAweDcxY2Q1NzAwMCAtICAgICAgICAweDcxZGEwZmZmMyArbGlid2VicnRj
LmR5bGliICgwKSA8QzVBNUY1NjgtNzdCQy0zMDUzLUI5QTUtQTY4Q0E2NDc4QTkxPiAvVm9sdW1l
cy9WT0xVTUUvKi9saWJ3ZWJydGMuZHlsaWIKICAgICAgIDB4NzFlMzBiMDAwIC0gICAgICAgIDB4
NzFmZDc0ZmZmICBjb20uYXBwbGUuSmF2YVNjcmlwdENvcmUgKDYwNSsgLSA2MDUuMS4xNispIDw2
NEFBN0FBQy03MDEzLTNFRUUtOTJDOS01MjU5QUM4NzkyNjU+IC9Wb2x1bWVzL1ZPTFVNRS8qL0ph
dmFTY3JpcHRDb3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL0phdmFTY3JpcHRDb3JlCiAgICAgICAw
eDcyNDVjZTAwMCAtICAgICAgICAweDcyNDY0NmZmNyAgY29tLmFwcGxlLldlYktpdFRlc3RSdW5u
ZXIuSW5qZWN0ZWRCdW5kbGUgKDEuMCAtIDEpIDwzQzRGNDgyOS03RTI4LTM5RDMtOEE0NC00RURG
MEYwOUIzOUE+IC9Wb2x1bWVzL1ZPTFVNRS8qL1dlYktpdFRlc3RSdW5uZXJJbmplY3RlZEJ1bmRs
ZS5idW5kbGUvQ29udGVudHMvTWFjT1MvV2ViS2l0VGVzdFJ1bm5lckluamVjdGVkQnVuZGxlCiAg
ICAgICAweDcyNGYwMDAwMCAtICAgICAgICAweDcyNTExYmZmZiArbGliV2ViQ29yZVRlc3RTdXBw
b3J0LmR5bGliICgwKSA8NjY0NjU3QjMtMTk5OS0zREIxLTk0MDktMzZEMUIxRDFGQUYxPiAvVm9s
dW1lcy9WT0xVTUUvKi9saWJXZWJDb3JlVGVzdFN1cHBvcnQuZHlsaWIKICAgICAgIDB4NzI3NmUx
MDAwIC0gICAgICAgIDB4NzI3NmU1ZmZmICBjb20uYXBwbGUuYXVkaW8uQXBwbGVIREFIQUxQbHVn
SW4gKDI4MC4xMiAtIDI4MC4xMikgPDlBQ0EwMTI3LUU2ODctMzg4NS05NDc1LTFENUU0REQ4MzE2
OD4gL1N5c3RlbS9MaWJyYXJ5L0V4dGVuc2lvbnMvQXBwbGVIREEua2V4dC9Db250ZW50cy9QbHVn
SW5zL0FwcGxlSERBSEFMUGx1Z0luLmJ1bmRsZS9Db250ZW50cy9NYWNPUy9BcHBsZUhEQUhBTFBs
dWdJbgogICAgICAgMHg3MmIzMDAwMDAgLSAgICAgICAgMHg3MmI4NjdmZjcgIGNvbS5hcHBsZS5h
dWRpby5jb2RlY3MuQ29tcG9uZW50cyAoNy4wIC0gNy4wKSA8MDBFM0FFODUtNzYyQi0zQTM1LTg2
OTUtRkYwQzA2Q0ZCQkU3PiAvU3lzdGVtL0xpYnJhcnkvQ29tcG9uZW50cy9BdWRpb0NvZGVjcy5j
b21wb25lbnQvQ29udGVudHMvTWFjT1MvQXVkaW9Db2RlY3MKICAgICAgIDB4NzJjNjAwMDAwIC0g
ICAgICAgIDB4NzJjN2E2ZmY3ICBjb20uYXBwbGUuYXVkaW8udW5pdHMuQ29tcG9uZW50cyAoMS4x
NCAtIDEuMTQpIDw1QUU2NUE2Qy1FRjJGLTM3QUMtOURERC00QUJCNjlFNzhFRjI+IC9TeXN0ZW0v
TGlicmFyeS9Db21wb25lbnRzL0NvcmVBdWRpby5jb21wb25lbnQvQ29udGVudHMvTWFjT1MvQ29y
ZUF1ZGlvCiAgICAgICAweDcyZTlkNTAwMCAtICAgICAgICAweDcyZWYwNmZmZiAgY29tLmFwcGxl
LmRyaXZlci5BcHBsZUludGVsSEQ0MDAwR3JhcGhpY3NHTERyaXZlciAoMTAuMzAuMTIgLSAxMC4z
LjApIDw5QjkyNUQ2My0xRjYxLTMxQTAtOEI5Ri04MkI2OEJCRUJENjA+IC9TeXN0ZW0vTGlicmFy
eS9FeHRlbnNpb25zL0FwcGxlSW50ZWxIRDQwMDBHcmFwaGljc0dMRHJpdmVyLmJ1bmRsZS9Db250
ZW50cy9NYWNPUy9BcHBsZUludGVsSEQ0MDAwR3JhcGhpY3NHTERyaXZlcgogICAgMHg3ZmZmNDE2
OTkwMDAgLSAgICAgMHg3ZmZmNDE2YjVmZmIgIGxpYkphcGFuZXNlQ29udmVydGVyLmR5bGliICg3
MCkgPDNDRUY2MTYwLUU4NEMtMzUxMi05MjUyLTg4MTgxQjI4QzhDNT4gL1N5c3RlbS9MaWJyYXJ5
L0NvcmVTZXJ2aWNlcy9FbmNvZGluZ3MvbGliSmFwYW5lc2VDb252ZXJ0ZXIuZHlsaWIKICAgIDB4
N2ZmZjQxNzFiMDAwIC0gICAgIDB4N2ZmZjQxYTY5ZmY3ICBjb20uYXBwbGUuUmF3Q2FtZXJhLmJ1
bmRsZSAoOC4wMi4wIC0gMTAxNy4yLjIpIDxDNzk5NzMwQi1DNzQ1LTM3NzUtQkNFNy1DNjdCOEJE
OTdGREI+IC9TeXN0ZW0vTGlicmFyeS9Db3JlU2VydmljZXMvUmF3Q2FtZXJhLmJ1bmRsZS9Db250
ZW50cy9NYWNPUy9SYXdDYW1lcmEKICAgIDB4N2ZmZjQyZjJmMDAwIC0gICAgIDB4N2ZmZjQyZmFk
ZmY3ICBjb20uYXBwbGUuZHJpdmVyLkFwcGxlSW50ZWxIRDQwMDBHcmFwaGljc01UTERyaXZlciAo
MTAuMzAuMTIgLSAxMC4zLjApIDxENjU5REJCNi01MUUxLTNBMTgtQTUwNS05NzIxQTYzODdFNTE+
IC9TeXN0ZW0vTGlicmFyeS9FeHRlbnNpb25zL0FwcGxlSW50ZWxIRDQwMDBHcmFwaGljc01UTERy
aXZlci5idW5kbGUvQ29udGVudHMvTWFjT1MvQXBwbGVJbnRlbEhENDAwMEdyYXBoaWNzTVRMRHJp
dmVyCiAgICAweDdmZmY0NTIzZTAwMCAtICAgICAweDdmZmY0NTQxOWZmNyAgY29tLmFwcGxlLmF2
Zm91bmRhdGlvbiAoMi4wIC0gMTUyOC4yNCkgPEU0Q0U5N0VBLTk0QzctM0NDNC1CNzY4LTE1QUEy
NUU3NkE4Mz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQVZGb3VuZGF0aW9uLmZyYW1ld29y
ay9WZXJzaW9ucy9BL0FWRm91bmRhdGlvbgogICAgMHg3ZmZmNDU0MWEwMDAgLSAgICAgMHg3ZmZm
NDU0ZDRmZjcgIGNvbS5hcHBsZS5hdWRpby5BVkZBdWRpbyAoMS4wIC0gPz8/KSA8ODkxMzQwRDgt
QTFGMy0zN0I1LUExODMtRUU1QkU4MUY1Mjk2PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9B
VkZvdW5kYXRpb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9BVkZBdWRpby5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9BVkZBdWRpbwogICAgMHg3ZmZmNDU0ZDYwMDAgLSAgICAgMHg3ZmZm
NDU1ZDlmZjMgIGNvbS5hcHBsZS5BVktpdCAoMS4xIC0gNDQwLjUuMSkgPDlCMTFBNzgwLTc2MEEt
M0FDNy1BMzVFLTkwNEM5MzJFOERCQz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQVZLaXQu
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvQVZLaXQKICAgIDB4N2ZmZjQ1NWRhMDAwIC0gICAgIDB4N2Zm
ZjQ1NWRhZmZmICBjb20uYXBwbGUuQWNjZWxlcmF0ZSAoMS4xMSAtIEFjY2VsZXJhdGUgMS4xMSkg
PDM0NjhDMDQ0LUYxRjktM0E4Ri1CODYxLUIxQTlBMDYxNEVDMz4gL1N5c3RlbS9MaWJyYXJ5L0Zy
YW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BY2NlbGVyYXRlCiAgICAw
eDdmZmY0NTVkYjAwMCAtICAgICAweDdmZmY0NTVmMmZmYiAgbGliQ0dJbnRlcmZhY2VzLmR5bGli
ICg0MTcpIDxDNjU0MzAxQS1CMTgzLTNCQ0UtQUNDRi02MzQ0Q0RBQ0MyQjc+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jr
cy92SW1hZ2UuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGlicmFyaWVzL2xpYkNHSW50ZXJmYWNlcy5k
eWxpYgogICAgMHg3ZmZmNDU1ZjMwMDAgLSAgICAgMHg3ZmZmNDVkNDFmZmIgIGNvbS5hcHBsZS52
SW1hZ2UgKDguMSAtID8/PykgPEVGNjExMEIyLThCRTEtMzA3OC04MTFBLTUyREI3MTc0NDk0RD4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9GcmFtZXdvcmtzL3ZJbWFnZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS92SW1hZ2UKICAgIDB4N2Zm
ZjQ1ZDQyMDAwIC0gICAgIDB4N2ZmZjQ1ZWUzZmZiICBsaWJCTEFTLmR5bGliICgxMjExLjMwLjEp
IDxENUU3MEY3Mi1FODEwLTNBQzEtODk3Qi0yQjZGRjBGN0ZGRUQ+IC9TeXN0ZW0vTGlicmFyeS9G
cmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy92ZWNM
aWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbGliQkxBUy5keWxpYgogICAgMHg3ZmZmNDVlZTQwMDAg
LSAgICAgMHg3ZmZmNDVmMWVmZWYgIGxpYkJOTlMuZHlsaWIgKDM3KSA8RTY1OTg3RUQtRTdCMS0z
RTc0LUJDM0MtODUxQ0JGQTIwQ0M1PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVy
YXRlLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJz
aW9ucy9BL2xpYkJOTlMuZHlsaWIKICAgIDB4N2ZmZjQ1ZjFmMDAwIC0gICAgIDB4N2ZmZjQ2MmY4
ZmY3ICBsaWJMQVBBQ0suZHlsaWIgKDEyMTEuMzAuMSkgPEQ1QTQ2NkEzLUY3QjItMzlFQy1BNUNB
LTBEMjgxMEE0QUQ0Nz4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL3ZlY0xpYi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9s
aWJMQVBBQ0suZHlsaWIKICAgIDB4N2ZmZjQ2MmY5MDAwIC0gICAgIDB4N2ZmZjQ2MzBmZmY3ICBs
aWJMaW5lYXJBbGdlYnJhLmR5bGliICgxMjExLjMwLjEpIDwyMDI5ODkxRi1ERjlDLTM4RTktQjMy
Qy01Qjg0NkYzODQ1M0U+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJh
bWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
bGliTGluZWFyQWxnZWJyYS5keWxpYgogICAgMHg3ZmZmNDYzMTAwMDAgLSAgICAgMHg3ZmZmNDYz
MTVmZjMgIGxpYlF1YWRyYXR1cmUuZHlsaWIgKDMpIDwzRDZCRjY2QS01NUIyLTM2OTItQkFDNy1E
RUIwQzY3NkVEMjk+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbGli
UXVhZHJhdHVyZS5keWxpYgogICAgMHg3ZmZmNDYzMTYwMDAgLSAgICAgMHg3ZmZmNDYzNzRmZmYg
IGxpYlNwYXJzZS5keWxpYiAoNzkuMS4xKSA8N0FEMEY4QTgtRkQzNi0zNkZFLUI4M0QtNTg2NDhF
QkQwMDI3PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9W
ZXJzaW9ucy9BL0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJzaW9ucy9BL2xpYlNwYXJz
ZS5keWxpYgogICAgMHg3ZmZmNDYzNzUwMDAgLSAgICAgMHg3ZmZmNDYzODdmZjcgIGxpYlNwYXJz
ZUJMQVMuZHlsaWIgKDEyMTEuMzAuMSkgPEY3MjY3OTEzLUVBRkMtMzE4NS05MTQ4LTNCNURBNDJC
NzM3ND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9GcmFtZXdvcmtzL3ZlY0xpYi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9saWJTcGFyc2VC
TEFTLmR5bGliCiAgICAweDdmZmY0NjM4ODAwMCAtICAgICAweDdmZmY0NjRmYmZlNyAgbGlidkRT
UC5keWxpYiAoNjIyLjIwLjgpIDxCRkM5RURFOC0zQUI4LTNGQTQtQkQ0Qi1CNUIzNjgxMEE0MjI+
IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FjY2VsZXJhdGUuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvRnJhbWV3b3Jrcy92ZWNMaWIuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbGlidkRTUC5keWxpYgog
ICAgMHg3ZmZmNDY0ZmMwMDAgLSAgICAgMHg3ZmZmNDY1YjFmZTcgIGxpYnZNaXNjLmR5bGliICg2
MjIuMjAuOCkgPDM1MjEzRkVFLUIxNjItMzQyOC1CN0ZDLTg0RTI0RDU1ODlDRj4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdv
cmtzL3ZlY0xpYi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9saWJ2TWlzYy5keWxpYgogICAgMHg3ZmZm
NDY1YjIwMDAgLSAgICAgMHg3ZmZmNDY1YjJmZmYgIGNvbS5hcHBsZS5BY2NlbGVyYXRlLnZlY0xp
YiAoMy4xMSAtIHZlY0xpYiAzLjExKSA8RDE0MEFEMTktMkU4OC0zRDUzLUFBNDMtQzU2RTI2OUMw
MUE0PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BY2NlbGVyYXRlLmZyYW1ld29yay9WZXJz
aW9ucy9BL0ZyYW1ld29ya3MvdmVjTGliLmZyYW1ld29yay9WZXJzaW9ucy9BL3ZlY0xpYgogICAg
MHg3ZmZmNDY4YTIwMDAgLSAgICAgMHg3ZmZmNDc2ZmZmZmYgIGNvbS5hcHBsZS5BcHBLaXQgKDYu
OSAtIDE1NjEuMjAuMTA2KSA8NzAzOTM4MEEtQURCMi0zMjVCLUFDMzctMzUzOTBBNEVCOTVDPiAv
U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BcHBLaXQuZnJhbWV3b3JrL1ZlcnNpb25zL0MvQXBw
S2l0CiAgICAweDdmZmY0Nzc1MTAwMCAtICAgICAweDdmZmY0Nzc1MWZmZiAgY29tLmFwcGxlLkFw
cGxpY2F0aW9uU2VydmljZXMgKDQ4IC0gNTApIDw3NjI3REJENi00OTdCLTNBQjctOUI2My1GMDUz
MkVERjA5Qjg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FwcGxpY2F0aW9uU2VydmljZXMu
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBwbGljYXRpb25TZXJ2aWNlcwogICAgMHg3ZmZmNDc3NTIw
MDAgLSAgICAgMHg3ZmZmNDc3YjhmZmYgIGNvbS5hcHBsZS5BcHBsaWNhdGlvblNlcnZpY2VzLkFU
UyAoMzc3IC0gNDQ1KSA8MjMwMzMzOUMtNUUyQS0zN0RCLUIyQjAtRTRFNURBOTEyMUU1PiAvU3lz
dGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BcHBsaWNhdGlvblNlcnZpY2VzLmZyYW1ld29yay9WZXJz
aW9ucy9BL0ZyYW1ld29ya3MvQVRTLmZyYW1ld29yay9WZXJzaW9ucy9BL0FUUwogICAgMHg3ZmZm
NDc4NTEwMDAgLSAgICAgMHg3ZmZmNDc5NzNmZmYgIGxpYkZvbnRQYXJzZXIuZHlsaWIgKDIyMi4x
LjIpIDxFNkMwQjhDRi04NjZDLTNCOUQtQTE1OS0zRTI4RTAwMjNDQ0Y+IC9TeXN0ZW0vTGlicmFy
eS9GcmFtZXdvcmtzL0FwcGxpY2F0aW9uU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJh
bWV3b3Jrcy9BVFMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUmVzb3VyY2VzL2xpYkZvbnRQYXJzZXIu
ZHlsaWIKICAgIDB4N2ZmZjQ3OTc0MDAwIC0gICAgIDB4N2ZmZjQ3OWJlZmY3ICBsaWJGb250UmVn
aXN0cnkuZHlsaWIgKDIyMSkgPEEyMkY4MkMwLUI0RkUtM0RCNS1COTY4LTc5QjI4MjU3REYyRj4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsv
VmVyc2lvbnMvQS9GcmFtZXdvcmtzL0FUUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SZXNvdXJjZXMv
bGliRm9udFJlZ2lzdHJ5LmR5bGliCiAgICAweDdmZmY0N2ExMDAwMCAtICAgICAweDdmZmY0N2Ex
NWZmNyAgbGliRm9udFJlZ2lzdHJ5VUkuZHlsaWIgKDIyMSkgPEVFNjJGRDkxLUNCMTQtMzkyRS1C
QTA3LTI0MTQ0MjJDNDIwQj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25T
ZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL0FUUy5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9SZXNvdXJjZXMvbGliRm9udFJlZ2lzdHJ5VUkuZHlsaWIKICAgIDB4N2ZmZjQ3YTYz
MDAwIC0gICAgIDB4N2ZmZjQ3YTk2ZmY3ICBsaWJUcnVlVHlwZVNjYWxlci5keWxpYiAoMjIyLjEu
MikgPDA1QTZBNkQ5LUQ2MTktMzQ5MC1CMDZELUM2NTc5MUVFRUMyOD4gL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFt
ZXdvcmtzL0FUUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SZXNvdXJjZXMvbGliVHJ1ZVR5cGVTY2Fs
ZXIuZHlsaWIKICAgIDB4N2ZmZjQ3YjAwMDAwIC0gICAgIDB4N2ZmZjQ3YjA0ZmYzICBjb20uYXBw
bGUuQ29sb3JTeW5jTGVnYWN5ICg0LjEzLjAgLSAxKSA8NDJDMjVFODUtMUNGMy0zREVDLUE0MzQt
QkU2OUY2OEY0MzE4PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BcHBsaWNhdGlvblNlcnZp
Y2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvQ29sb3JTeW5jTGVnYWN5LmZyYW1l
d29yay9WZXJzaW9ucy9BL0NvbG9yU3luY0xlZ2FjeQogICAgMHg3ZmZmNDdiYTQwMDAgLSAgICAg
MHg3ZmZmNDdiZjZmZjcgIGNvbS5hcHBsZS5ISVNlcnZpY2VzICgxLjIyIC0gNjIyKSA8MkU4M0NE
NkYtRUQ5OC0zQzI5LUJEMEEtODUyNUUzOEFCNURCPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9BcHBsaWNhdGlvblNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvSElT
ZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9ISVNlcnZpY2VzCiAgICAweDdmZmY0N2JmNzAw
MCAtICAgICAweDdmZmY0N2MwNWZmZiAgY29tLmFwcGxlLkxhbmdBbmFseXNpcyAoMS43LjAgLSAx
LjcuMCkgPDcxQTlDODE1LUFDNTUtM0UzNi1BNjE4LUY2Nzc4RjUxMTlBRD4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9G
cmFtZXdvcmtzL0xhbmdBbmFseXNpcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MYW5nQW5hbHlzaXMK
ICAgIDB4N2ZmZjQ3YzA2MDAwIC0gICAgIDB4N2ZmZjQ3YzUyZmZmICBjb20uYXBwbGUucHJpbnQu
ZnJhbWV3b3JrLlByaW50Q29yZSAoMTMgLSA1MDMpIDxCQzIzQzIyQS03NjkxLTNCRDQtODAxMy1C
QUFFM0E0NDc2M0M+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FwcGxpY2F0aW9uU2Vydmlj
ZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9QcmludENvcmUuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvUHJpbnRDb3JlCiAgICAweDdmZmY0N2M1MzAwMCAtICAgICAweDdmZmY0N2M4ZGZm
ZiAgY29tLmFwcGxlLlFEICgzLjEyIC0gNDAzKSA8MzhEODEwNkEtNEZGQS0zRkU5LTk5OTktNzE0
Q0FERDdFRTlDPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9BcHBsaWNhdGlvblNlcnZpY2Vz
LmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvUUQuZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
UUQKICAgIDB4N2ZmZjQ3YzhlMDAwIC0gICAgIDB4N2ZmZjQ3YzlhZmZmICBjb20uYXBwbGUuc3Bl
ZWNoLnN5bnRoZXNpcy5mcmFtZXdvcmsgKDcuMi4xIC0gNy4yLjEpIDxCQTdFREM0OS1FMjE2LTNE
OTYtQTdCNy04Qzc2Qjg2MkQ0ODQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0FwcGxpY2F0
aW9uU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9TcGVlY2hTeW50aGVz
aXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvU3BlZWNoU3ludGhlc2lzCiAgICAweDdmZmY0N2M5YjAw
MCAtICAgICAweDdmZmY0N2YyNmZmNyAgY29tLmFwcGxlLmF1ZGlvLnRvb2xib3guQXVkaW9Ub29s
Ym94ICgxLjE0IC0gMS4xNCkgPDcxNjk5QjZFLThCOTQtMzlFMi04MDFGLTg0NjdDMkI1QjYyMT4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXVkaW9Ub29sYm94LmZyYW1ld29yay9WZXJzaW9u
cy9BL0F1ZGlvVG9vbGJveAogICAgMHg3ZmZmNDdmMjgwMDAgLSAgICAgMHg3ZmZmNDdmMjhmZmYg
IGNvbS5hcHBsZS5hdWRpby51bml0cy5BdWRpb1VuaXQgKDEuMTQgLSAxLjE0KSA8MjhDN0ZDMEMt
RDJFNS0zNzAzLTkxNkYtODY2QTBGODIzMjI5PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9B
dWRpb1VuaXQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXVkaW9Vbml0CiAgICAweDdmZmY0ODIzZDAw
MCAtICAgICAweDdmZmY0ODVjZmZmZiAgY29tLmFwcGxlLkNGTmV0d29yayAoODkzLjEzLjEgLSA4
OTMuMTMuMSkgPDU2NzIzMUY0LTQwODAtM0IyRC04MzQ5LTkxNzdCRDM1ODgwND4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ0ZOZXR3b3JrLmZyYW1ld29yay9WZXJzaW9ucy9BL0NGTmV0d29y
awogICAgMHg3ZmZmNDg1ZTQwMDAgLSAgICAgMHg3ZmZmNDg1ZTRmZmYgIGNvbS5hcHBsZS5DYXJi
b24gKDE1OCAtIDE1OCkgPEZDRDdBOUZGLTVFNTMtM0IwQy04QTUyLTY5MUMxMUIyQTBDNT4gL1N5
c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ2FyYm9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0NhcmJv
bgogICAgMHg3ZmZmNDg1ZTUwMDAgLSAgICAgMHg3ZmZmNDg1ZThmZmIgIGNvbS5hcHBsZS5Db21t
b25QYW5lbHMgKDEuMi42IC0gOTgpIDwzOUM4RUJBMy1FRUIyLTMzNUItOEE4OC1ENkM2NEJBQTEx
MkY+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NhcmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9GcmFtZXdvcmtzL0NvbW1vblBhbmVscy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db21tb25QYW5l
bHMKICAgIDB4N2ZmZjQ4NWU5MDAwIC0gICAgIDB4N2ZmZjQ4OGVlZmY3ICBjb20uYXBwbGUuSElU
b29sYm94ICgyLjEuMSAtIDkxMC40KSA8QUNFQTg2QUQtODBBMS0zQzFCLTlDM0MtODBDMTYxNDBB
MjA5PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3JrL1ZlcnNpb25z
L0EvRnJhbWV3b3Jrcy9ISVRvb2xib3guZnJhbWV3b3JrL1ZlcnNpb25zL0EvSElUb29sYm94CiAg
ICAweDdmZmY0ODhlZjAwMCAtICAgICAweDdmZmY0ODhmMmZmYiAgY29tLmFwcGxlLmhlbHAgKDEu
My44IC0gNjQpIDwxOEQwMjAxNi0xMTlBLTMzRTgtQUVCMC1FOTQ2NkJBNEFENTY+IC9TeXN0ZW0v
TGlicmFyeS9GcmFtZXdvcmtzL0NhcmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtz
L0hlbHAuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSGVscAogICAgMHg3ZmZmNDg4ZjMwMDAgLSAgICAg
MHg3ZmZmNDg4ZjhmZmYgIGNvbS5hcHBsZS5JbWFnZUNhcHR1cmUgKDkuMCAtIDkuMCkgPDJERTU5
MEU1LURGMEUtMzk2Mi1BMkJFLTA2RUJDNzlCM0Q3Mj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29y
a3MvQ2FyYm9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvSW1hZ2VDYXB0dXJlLmZy
YW1ld29yay9WZXJzaW9ucy9BL0ltYWdlQ2FwdHVyZQogICAgMHg3ZmZmNDg4ZjkwMDAgLSAgICAg
MHg3ZmZmNDg5OGVmZmIgIGNvbS5hcHBsZS5pbmsuZnJhbWV3b3JrICgxMC45IC0gMjIwKSA8RDhB
RUNBRTMtOUZEMi0zMkUzLUI2NTktMDI2RjMzNjUwQkIyPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3
b3Jrcy9DYXJib24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9JbmsuZnJhbWV3b3Jr
L1ZlcnNpb25zL0EvSW5rCiAgICAweDdmZmY0ODk4ZjAwMCAtICAgICAweDdmZmY0ODlhOWZmNyAg
Y29tLmFwcGxlLm9wZW5zY3JpcHRpbmcgKDEuNyAtIDE3NCkgPDFDRjY0REQxLTE0NEQtMzcwMi1B
NzI4LTFGNDc2RTFBMDBFRD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ2FyYm9uLmZyYW1l
d29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvT3BlblNjcmlwdGluZy5mcmFtZXdvcmsvVmVyc2lv
bnMvQS9PcGVuU2NyaXB0aW5nCiAgICAweDdmZmY0ODljYTAwMCAtICAgICAweDdmZmY0ODljYmZm
ZiAgY29tLmFwcGxlLnByaW50LmZyYW1ld29yay5QcmludCAoMTIgLSAyNjcpIDxFNENCQUFGQy05
MDQ1LTM4QUMtOUY5My04QzkzMURERUQ5RDg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0Nh
cmJvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1ByaW50LmZyYW1ld29yay9WZXJz
aW9ucy9BL1ByaW50CiAgICAweDdmZmY0ODljYzAwMCAtICAgICAweDdmZmY0ODljZWZmNyAgY29t
LmFwcGxlLnNlY3VyaXR5aGkgKDkuMCAtIDU1MDA2KSA8RTc2NjgyMDAtQjRDQi0zNjEyLTk2Qjgt
RDU3RTk0MDc3Nzg3PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3Jr
L1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9TZWN1cml0eUhJLmZyYW1ld29yay9WZXJzaW9ucy9BL1Nl
Y3VyaXR5SEkKICAgIDB4N2ZmZjQ4OWNmMDAwIC0gICAgIDB4N2ZmZjQ4OWQ1ZmZmICBjb20uYXBw
bGUuc3BlZWNoLnJlY29nbml0aW9uLmZyYW1ld29yayAoNi4wLjMgLSA2LjAuMykgPDFGMTBFRDFG
LTEyQzctMzlBQy04OEEwLTQzQTEzMzhGOTMxNj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3Mv
Q2FyYm9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvU3BlZWNoUmVjb2duaXRpb24u
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvU3BlZWNoUmVjb2duaXRpb24KICAgIDB4N2ZmZjQ4YWUyMDAw
IC0gICAgIDB4N2ZmZjQ4YWUyZmZmICBjb20uYXBwbGUuQ29jb2EgKDYuMTEgLSAyMikgPEYxQUVE
MUU4LUFDQzItMzFGMC1CODVFLTE3RTQxMTY3RkM4OD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29y
a3MvQ29jb2EuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29jb2EKICAgIDB4N2ZmZjQ4YWYwMDAwIC0g
ICAgIDB4N2ZmZjQ4YmE5ZmY3ICBjb20uYXBwbGUuQ29sb3JTeW5jICg0LjEzLjAgLSA1NDYpIDxB
NUUwMTNEOS03MzA1LTMwMjYtODc5RS00RDFGMDM4QTQzMEQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFt
ZXdvcmtzL0NvbG9yU3luYy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db2xvclN5bmMKICAgIDB4N2Zm
ZjQ4ZDM2MDAwIC0gICAgIDB4N2ZmZjQ4ZGM5ZmY3ICBjb20uYXBwbGUuYXVkaW8uQ29yZUF1ZGlv
ICg0LjMuMCAtIDQuMy4wKSA8MzE3Nzc0NjMtMTQ0Qy0zQTlFLTk4RDctMTdBMDU4QTNDNkRCPiAv
U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlQXVkaW8uZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
Q29yZUF1ZGlvCiAgICAweDdmZmY0OGUzMDAwMCAtICAgICAweDdmZmY0OGU1OWZmYiAgY29tLmFw
cGxlLkNvcmVCbHVldG9vdGggKDEuMCAtIDEpIDxFMTMzNTA3NC05RDA3LTM3MEUtODQ0MC02MUM0
ODc0QkFDNTY+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVCbHVldG9vdGguZnJhbWV3
b3JrL1ZlcnNpb25zL0EvQ29yZUJsdWV0b290aAogICAgMHg3ZmZmNDhlNWEwMDAgLSAgICAgMHg3
ZmZmNDkxYmNmZmIgIGNvbS5hcHBsZS5Db3JlRGF0YSAoMTIwIC0gODQ5LjIpIDw4QzAxRjM4OS1B
MTJGLTM5RDktOTkyRi01N0RGOUI3MzM0RjU+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0Nv
cmVEYXRhLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVEYXRhCiAgICAweDdmZmY0OTFiZDAwMCAt
ICAgICAweDdmZmY0OTI4OWZmZiAgY29tLmFwcGxlLkNvcmVEaXNwbGF5ICgxLjAgLSA4MS43KSA8
QUY1OEJEMDYtOTMxNy0zMkI1LUFFMUEtOTQ2RUVFOURGQTg2PiAvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9Db3JlRGlzcGxheS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlRGlzcGxheQogICAg
MHg3ZmZmNDkyOGEwMDAgLSAgICAgMHg3ZmZmNDk3MjNmZmYgIGNvbS5hcHBsZS5Db3JlRm91bmRh
dGlvbiAoNi45IC0gMTQ1MC4xNikgPEREMjUzMTQ3LTU3MjAtM0IzQi1CMjIyLTc3RkQxNDE5QzQw
MD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZUZvdW5kYXRpb24uZnJhbWV3b3JrL1Zl
cnNpb25zL0EvQ29yZUZvdW5kYXRpb24KICAgIDB4N2ZmZjQ5NzI1MDAwIC0gICAgIDB4N2ZmZjQ5
ZDUwZmY3ICBjb20uYXBwbGUuQ29yZUdyYXBoaWNzICgyLjAgLSAxMTI5LjUpIDxDM0UwNTJBNi1C
MEVGLTMwMTctQTFFQi00Qzg2Q0U5ODZCOEM+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0Nv
cmVHcmFwaGljcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlR3JhcGhpY3MKICAgIDB4N2ZmZjQ5
ZDUyMDAwIC0gICAgIDB4N2ZmZjRhMDQxZmZmICBjb20uYXBwbGUuQ29yZUltYWdlICgxMy4wLjAg
LSA1NzkuMi45KSA8OEFFMTQzQUItNjI4NC0zQjAwLUI1NkQtOEMwQzE4MjZFRjM0PiAvU3lzdGVt
L0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlSW1hZ2UuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZUlt
YWdlCiAgICAweDdmZmY0YTJkMDAwMCAtICAgICAweDdmZmY0YTNiMGZmMyAgY29tLmFwcGxlLkNv
cmVNZWRpYSAoMS4wIC0gMjI2Ny40MC41KSA8MEIxNzI3OTUtQzg1QS0zNEFDLUE0N0EtMUYxM0Qx
OUMyN0NFPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlTWVkaWEuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvQ29yZU1lZGlhCiAgICAweDdmZmY0YTNiMTAwMCAtICAgICAweDdmZmY0YTNmZmZm
ZiAgY29tLmFwcGxlLkNvcmVNZWRpYUlPICg4MTIuMCAtIDQ5OTMpIDxCQzQ0MDUzRC02QjlBLTM0
RTUtQkI5Ny1GMUEzQTJGMDkzMDg+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVNZWRp
YUlPLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVNZWRpYUlPCiAgICAweDdmZmY0YTQwMDAwMCAt
ICAgICAweDdmZmY0YTQwMGZmZiAgY29tLmFwcGxlLkNvcmVTZXJ2aWNlcyAoODIyLjE5IC0gODIy
LjE5KSA8MEM2MEI2MzktNENDNC0zRjU3LUJDNUUtREI3MUVCNzVGN0Y0PiAvU3lzdGVtL0xpYnJh
cnkvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVNlcnZp
Y2VzCiAgICAweDdmZmY0YTQwMTAwMCAtICAgICAweDdmZmY0YTQ3NWZmYiAgY29tLmFwcGxlLkFF
ICg3MzUuMSAtIDczNS4xKSA8NEREQTVEOTMtNTcwMS0zQTYxLTg1MUYtQkU3Mzc0MDkyOTU1PiAv
U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvRnJhbWV3b3Jrcy9BRS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BRQogICAgMHg3ZmZmNGE0NzYw
MDAgLSAgICAgMHg3ZmZmNGE3NGRmZjcgIGNvbS5hcHBsZS5Db3JlU2VydmljZXMuQ2FyYm9uQ29y
ZSAoMTE3OC4yIC0gMTE3OC4yKSA8QTFGRTc0RjgtOTUzQi0zNzFFLUE4QUMtRTg3QjMwRkI3OUM2
PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNp
b25zL0EvRnJhbWV3b3Jrcy9DYXJib25Db3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL0NhcmJvbkNv
cmUKICAgIDB4N2ZmZjRhNzRlMDAwIC0gICAgIDB4N2ZmZjRhNzgyZmY3ICBjb20uYXBwbGUuRGlj
dGlvbmFyeVNlcnZpY2VzICgxLjIgLSAyODQpIDwzRkNFRTI4MC04REQwLTM3QzktQkZENC03QkE4
N0FBRkM4RUY+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVTZXJ2aWNlcy5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL0RpY3Rpb25hcnlTZXJ2aWNlcy5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9EaWN0aW9uYXJ5U2VydmljZXMKICAgIDB4N2ZmZjRhNzgzMDAwIC0gICAgIDB4N2Zm
ZjRhNzhiZmYzICBjb20uYXBwbGUuQ29yZVNlcnZpY2VzLkZTRXZlbnRzICgxMjM5IC0gMTIzOSkg
PDdCQkM1Q0I3LURCQzgtMzE2Qi05OUIwLTc4MTgyNzE1OUEyRj4gL1N5c3RlbS9MaWJyYXJ5L0Zy
YW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvRlNF
dmVudHMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRlNFdmVudHMKICAgIDB4N2ZmZjRhNzhjMDAwIC0g
ICAgIDB4N2ZmZjRhOTQ0ZmZmICBjb20uYXBwbGUuTGF1bmNoU2VydmljZXMgKDgyMi4xOSAtIDgy
Mi4xOSkgPDZGMzZFNUU4LTVCMzYtMzgzOC1BODJFLTFGRkEzRDNDQzM1Nj4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvQ29yZVNlcnZpY2VzLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29y
a3MvTGF1bmNoU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGF1bmNoU2VydmljZXMKICAg
IDB4N2ZmZjRhOTQ1MDAwIC0gICAgIDB4N2ZmZjRhOWY0ZmY3ICBjb20uYXBwbGUuTWV0YWRhdGEg
KDEwLjcuMCAtIDExOTEuMi42KSA8RkI2NkIyOTgtRDU1RC0zOThBLUJFREItQ0I3QjgyOTU2QUU1
PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNp
b25zL0EvRnJhbWV3b3Jrcy9NZXRhZGF0YS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NZXRhZGF0YQog
ICAgMHg3ZmZmNGE5ZjUwMDAgLSAgICAgMHg3ZmZmNGFhNTJmZjcgIGNvbS5hcHBsZS5Db3JlU2Vy
dmljZXMuT1NTZXJ2aWNlcyAoODIyLjE5IC0gODIyLjE5KSA8NTAzQjNFMTgtOEExRS0zQ0QyLTlC
MEUtQTgzRkVFM0U2QUQ5PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMu
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9PU1NlcnZpY2VzLmZyYW1ld29yay9WZXJz
aW9ucy9BL09TU2VydmljZXMKICAgIDB4N2ZmZjRhYTUzMDAwIC0gICAgIDB4N2ZmZjRhYWMxZmZm
ICBjb20uYXBwbGUuU2VhcmNoS2l0ICgxLjQuMCAtIDEuNC4wKSA8MTQwNTNGODgtMkM3Ni0zNUNB
LTlGQzEtMkE5QkMwQjYzRjg4PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlU2Vydmlj
ZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9TZWFyY2hLaXQuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvU2VhcmNoS2l0CiAgICAweDdmZmY0YWFjMjAwMCAtICAgICAweDdmZmY0YWFlNmZm
YiAgY29tLmFwcGxlLmNvcmVzZXJ2aWNlcy5TaGFyZWRGaWxlTGlzdCAoNzEuNCAtIDcxLjQpIDxG
NjFBMkFGOC0zRTI1LTNBMkEtOEQ1Qi1FMzczNzNFODdCM0I+IC9TeXN0ZW0vTGlicmFyeS9GcmFt
ZXdvcmtzL0NvcmVTZXJ2aWNlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzL1NoYXJl
ZEZpbGVMaXN0LmZyYW1ld29yay9WZXJzaW9ucy9BL1NoYXJlZEZpbGVMaXN0CiAgICAweDdmZmY0
YWQ5MDAwMCAtICAgICAweDdmZmY0YWVkZWZmYiAgY29tLmFwcGxlLkNvcmVUZXh0ICgzNTIuMCAt
IDU3OC4xMikgPERBMEJDNTU5LTI3N0EtMzJCQS05MUVBLUZEMkYwMkVBMTg2Rj4gL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVRleHQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVRleHQK
ICAgIDB4N2ZmZjRhZWRmMDAwIC0gICAgIDB4N2ZmZjRhZjE5ZmYzICBjb20uYXBwbGUuQ29yZVZp
ZGVvICgxLjggLSAyNzkuMikgPEE4RkM1MzI1LUQwOTItM0EyOC1BMUNGLTVDOTRCODEwMUY3MT4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZVZpZGVvLmZyYW1ld29yay9WZXJzaW9ucy9B
L0NvcmVWaWRlbwogICAgMHg3ZmZmNGFmMWEwMDAgLSAgICAgMHg3ZmZmNGFmYTRmZmIgIGNvbS5h
cHBsZS5mcmFtZXdvcmsuQ29yZVdMQU4gKDEzLjAgLSAxMzM5KSA8Njc2Mjg4M0YtQ0Y1RS0zNENF
LUI5NkMtQTU4RUVDNDM5NjBFPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlV0xBTi5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlV0xBTgogICAgMHg3ZmZmNGIxMzIwMDAgLSAgICAgMHg3
ZmZmNGIxM2RmZjcgIGNvbS5hcHBsZS5EaXJlY3RvcnlTZXJ2aWNlLkZyYW1ld29yayAoMTAuMTMg
LSAyMDcpIDxEQzcxODg4Ni0wQ0E4LTNENzEtODU1OC03QThGOEFGMzIwMjA+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0RpcmVjdG9yeVNlcnZpY2UuZnJhbWV3b3JrL1ZlcnNpb25zL0EvRGly
ZWN0b3J5U2VydmljZQogICAgMHg3ZmZmNGIxM2UwMDAgLSAgICAgMHg3ZmZmNGIxZjhmZmYgIGNv
bS5hcHBsZS5EaXNjUmVjb3JkaW5nICg5LjAuMyAtIDkwMzAuNC41KSA8MjA5NEJBQzQtNEYzNy0z
NzQxLUI5QkQtNjAxNThBNjNDNTAzPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9EaXNjUmVj
b3JkaW5nLmZyYW1ld29yay9WZXJzaW9ucy9BL0Rpc2NSZWNvcmRpbmcKICAgIDB4N2ZmZjRiMjFm
MDAwIC0gICAgIDB4N2ZmZjRiMjI0ZmZmICBjb20uYXBwbGUuRGlza0FyYml0cmF0aW9uICgyLjcg
LSAyLjcpIDw0NDgzNkNFOS1BOUVELTMwMTctOTcyQS03QTBBM0Q2QjQ3MkI+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL0Rpc2tBcmJpdHJhdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9EaXNr
QXJiaXRyYXRpb24KICAgIDB4N2ZmZjRiM2U1MDAwIC0gICAgIDB4N2ZmZjRiN2FhZmZmICBjb20u
YXBwbGUuRm91bmRhdGlvbiAoNi45IC0gMTQ1MC4xNikgPDdGRUM2NjEwLTcwRUEtM0E4RC04RUM0
LTdFOTlCQUYxRTMxMj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvRm91bmRhdGlvbi5mcmFt
ZXdvcmsvVmVyc2lvbnMvQy9Gb3VuZGF0aW9uCiAgICAweDdmZmY0YjgxYTAwMCAtICAgICAweDdm
ZmY0Yjg0YWZmZiAgY29tLmFwcGxlLkdTUyAoNC4wIC0gMi4wKSA8M0I0QjQ1MDktQjVBMy0zOTZC
LTlDNzEtODBCQUU4NDQ3NkZBPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9HU1MuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvR1NTCiAgICAweDdmZmY0Yjk1YzAwMCAtICAgICAweDdmZmY0YmE1ZmZm
MyAgY29tLmFwcGxlLkJsdWV0b290aCAoNi4wLjIgLSA2LjAuMmYyKSA8QUZDNEE0MEItQUU1Ni0z
QzUzLUEyQjEtRDBEOUMzMzVFMjFEPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JT0JsdWV0
b290aC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9JT0JsdWV0b290aAogICAgMHg3ZmZmNGJhYmYwMDAg
LSAgICAgMHg3ZmZmNGJiNWFmZmYgIGNvbS5hcHBsZS5mcmFtZXdvcmsuSU9LaXQgKDIuMC4yIC0g
MTQ0NS4zMS4xKSA8M0RDMzdGNzYtQUQ1NC0zNzdELThDQjAtQTU1QzA2OUE0NjgwPiAvU3lzdGVt
L0xpYnJhcnkvRnJhbWV3b3Jrcy9JT0tpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9JT0tpdAogICAg
MHg3ZmZmNGJiNWMwMDAgLSAgICAgMHg3ZmZmNGJiNjNmZmIgIGNvbS5hcHBsZS5JT1N1cmZhY2Ug
KDIwOS4yLjIgLSAyMDkuMi4yKSA8NkQzNUE2MDEtMUM0Ny0zN0JFLUFEMzEtRjhFQjg4RjY3NTcz
PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JT1N1cmZhY2UuZnJhbWV3b3JrL1ZlcnNpb25z
L0EvSU9TdXJmYWNlCiAgICAweDdmZmY0YmJiYTAwMCAtICAgICAweDdmZmY0YmQzNWZmZiAgY29t
LmFwcGxlLkltYWdlSU8uZnJhbWV3b3JrICgzLjMuMCAtIDE3MTMpIDxEMkM0RkVFNS0yRjRDLTMz
MkUtQTkzNS1DOUQ5OENENzIxMEY+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0ltYWdlSU8u
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvSW1hZ2VJTwogICAgMHg3ZmZmNGJkMzYwMDAgLSAgICAgMHg3
ZmZmNGJkM2FmZmIgIGxpYkdJRi5keWxpYiAoMTcxMykgPEEwOEU1MTdGLTJFOUYtM0ExMC1CMTgw
LTU5MkVERUI3QTY4MT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSW1hZ2VJTy5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9SZXNvdXJjZXMvbGliR0lGLmR5bGliCiAgICAweDdmZmY0YmQzYjAwMCAt
ICAgICAweDdmZmY0YmUyMmZmZiAgbGliSlAyLmR5bGliICgxNzEzKSA8NTBEMTBGREMtQzQ3MC0z
OTAyLUJEQUMtRDM4QkREQ0ZCODFEPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JbWFnZUlP
LmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9saWJKUDIuZHlsaWIKICAgIDB4N2ZmZjRi
ZTIzMDAwIC0gICAgIDB4N2ZmZjRiZTQ2ZmZmICBsaWJKUEVHLmR5bGliICgxNzEzKSA8MTk5MzVF
RkEtNkI2RC0zNzU0LTk2Q0EtNkY1RjA5QkQ0QkIwPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9JbWFnZUlPLmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9saWJKUEVHLmR5bGliCiAg
ICAweDdmZmY0YzEyMzAwMCAtICAgICAweDdmZmY0YzE0OWZmMyAgbGliUG5nLmR5bGliICgxNzEz
KSA8MEY4NEFGMkYtNzI0OC0zRDdELUI5NjAtRkZEQTFBM0Y1ODM3PiAvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy9JbWFnZUlPLmZyYW1ld29yay9WZXJzaW9ucy9BL1Jlc291cmNlcy9saWJQbmcu
ZHlsaWIKICAgIDB4N2ZmZjRjMTRhMDAwIC0gICAgIDB4N2ZmZjRjMTRjZmYzICBsaWJSYWRpYW5j
ZS5keWxpYiAoMTcxMykgPDA5Njk5REE1LTMzNTQtM0Q5OS1BNTQ0LUNDQzM0NkJBNEMxRT4gL1N5
c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSW1hZ2VJTy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SZXNv
dXJjZXMvbGliUmFkaWFuY2UuZHlsaWIKICAgIDB4N2ZmZjRjMTRkMDAwIC0gICAgIDB4N2ZmZjRj
MTlhZmZmICBsaWJUSUZGLmR5bGliICgxNzEzKSA8ODQ1ODBERDgtNTEzRi0zODNCLUIxQzItMjI5
NEQ4QjAxOTY5PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JbWFnZUlPLmZyYW1ld29yay9W
ZXJzaW9ucy9BL1Jlc291cmNlcy9saWJUSUZGLmR5bGliCiAgICAweDdmZmY0Y2VkNDAwMCAtICAg
ICAweDdmZmY0Y2VlZGZmNyAgY29tLmFwcGxlLktlcmJlcm9zICgzLjAgLSAxKSA8Q0FGMDc1QzAt
NEMyNC0zQUNFLTlBRTYtNzdCRUZERUEzNjIyPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9L
ZXJiZXJvcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9LZXJiZXJvcwogICAgMHg3ZmZmNGNlZWUwMDAg
LSAgICAgMHg3ZmZmNGNmMjNmZmYgIGNvbS5hcHBsZS5MREFQRnJhbWV3b3JrICgyLjQuMjggLSAx
OTQuNSkgPDg0MTlCREI1LTEyREYtM0JDOS04NzFELTdBMjcwRTA4MDI0OT4gL1N5c3RlbS9MaWJy
YXJ5L0ZyYW1ld29ya3MvTERBUC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MREFQCiAgICAweDdmZmY0
Y2YyNDAwMCAtICAgICAweDdmZmY0Y2Y0NmZmNyAgY29tLmFwcGxlLnNwZWVjaC5MYXRlbnRTZW1h
bnRpY01hcHBpbmdGcmFtZXdvcmsgKDIuMTIuMyAtIDIuMTIuMykgPDY0QzFCMEUyLThFRTYtMzVD
NS05ODYwLTM2Nzc1QTEyRkNDND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTGF0ZW50U2Vt
YW50aWNNYXBwaW5nLmZyYW1ld29yay9WZXJzaW9ucy9BL0xhdGVudFNlbWFudGljTWFwcGluZwog
ICAgMHg3ZmZmNGQxYTUwMDAgLSAgICAgMHg3ZmZmNGQxYWNmZmYgIGNvbS5hcHBsZS5NZWRpYUFj
Y2Vzc2liaWxpdHkgKDEuMCAtIDExNCkgPEQ3MkM1OTNBLUFDMzItMzQxOS1BQjg2LTZCMDcyMTdF
QkZENT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTWVkaWFBY2Nlc3NpYmlsaXR5LmZyYW1l
d29yay9WZXJzaW9ucy9BL01lZGlhQWNjZXNzaWJpbGl0eQogICAgMHg3ZmZmNGQxYzIwMDAgLSAg
ICAgMHg3ZmZmNGQyNGVmZmIgIGNvbS5hcHBsZS5NZWRpYVBsYXllciAoMS4wIC0gMS4wKSA8NzY3
NThBNDgtREI0MC0zMzMxLTg1MTctMDdEOUE0NDU4MzZEPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3
b3Jrcy9NZWRpYVBsYXllci5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NZWRpYVBsYXllcgogICAgMHg3
ZmZmNGQyNGYwMDAgLSAgICAgMHg3ZmZmNGQ4NjhmZmYgIGNvbS5hcHBsZS5NZWRpYVRvb2xib3gg
KDEuMCAtIDIyNjcuNDAuNSkgPDcyNDY5MjA3LUM3RjQtMzA2Ny1COUMwLTEzQkM5NjgwQTRCMD4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTWVkaWFUb29sYm94LmZyYW1ld29yay9WZXJzaW9u
cy9BL01lZGlhVG9vbGJveAogICAgMHg3ZmZmNGQ4NmEwMDAgLSAgICAgMHg3ZmZmNGQ4ZTlmZmYg
IGNvbS5hcHBsZS5NZXRhbCAoMTI0LjcgLSAxMjQuNykgPEYyMjFEREExLTc5MkMtMzQwOS1BOUVC
LUYyQ0I0OEU5M0Q0Nj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvTWV0YWwuZnJhbWV3b3Jr
L1ZlcnNpb25zL0EvTWV0YWwKICAgIDB4N2ZmZjRkOTA2MDAwIC0gICAgIDB4N2ZmZjRkOTFiZmZm
ICBjb20uYXBwbGUuTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuTVBTQ29yZSAoMS4wIC0gMSkgPEQ0
QkNCQTg0LUFEMUItMzNEQy05OUYzLTE2RjlFNUU1MDkwNj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuZnJhbWV3b3JrL0ZyYW1ld29ya3MvTVBTQ29y
ZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NUFNDb3JlCiAgICAweDdmZmY0ZDkxYzAwMCAtICAgICAw
eDdmZmY0ZDk4N2ZlZiAgY29tLmFwcGxlLk1ldGFsUGVyZm9ybWFuY2VTaGFkZXJzLk1QU0ltYWdl
ICgxLjAgLSAxKSA8RTUwNEVDOTctRkFENy0zNkRDLUIxNTEtNkY4OUFCOTExRTNBPiAvU3lzdGVt
L0xpYnJhcnkvRnJhbWV3b3Jrcy9NZXRhbFBlcmZvcm1hbmNlU2hhZGVycy5mcmFtZXdvcmsvRnJh
bWV3b3Jrcy9NUFNJbWFnZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NUFNJbWFnZQogICAgMHg3ZmZm
NGQ5ODgwMDAgLSAgICAgMHg3ZmZmNGQ5YWJmZmYgIGNvbS5hcHBsZS5NZXRhbFBlcmZvcm1hbmNl
U2hhZGVycy5NUFNNYXRyaXggKDEuMCAtIDEpIDxBNUI2RjZGQy1BMTlBLTMyQzAtQTk5OS05OEI2
Njg4NzYwQzc+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL01ldGFsUGVyZm9ybWFuY2VTaGFk
ZXJzLmZyYW1ld29yay9GcmFtZXdvcmtzL01QU01hdHJpeC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9N
UFNNYXRyaXgKICAgIDB4N2ZmZjRkOWFjMDAwIC0gICAgIDB4N2ZmZjRkYTJjZmY3ICBjb20uYXBw
bGUuTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuTVBTTmV1cmFsTmV0d29yayAoMS4wIC0gMSkgPEQw
RDhGMTNGLUFDRDQtM0I2MS1CRTU0LTEyMUNDQjA1RUNGND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvTWV0YWxQZXJmb3JtYW5jZVNoYWRlcnMuZnJhbWV3b3JrL0ZyYW1ld29ya3MvTVBTTmV1
cmFsTmV0d29yay5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NUFNOZXVyYWxOZXR3b3JrCiAgICAweDdm
ZmY0ZGEyZDAwMCAtICAgICAweDdmZmY0ZGEyZGZmNyAgY29tLmFwcGxlLk1ldGFsUGVyZm9ybWFu
Y2VTaGFkZXJzLk1ldGFsUGVyZm9ybWFuY2VTaGFkZXJzICgxLjAgLSAxKSA8MkU4NzIzRkMtQUE1
My0zNTk2LUI2QTQtMjIwQTM3OEI3QTVBPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9NZXRh
bFBlcmZvcm1hbmNlU2hhZGVycy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NZXRhbFBlcmZvcm1hbmNl
U2hhZGVycwogICAgMHg3ZmZmNGVhMzYwMDAgLSAgICAgMHg3ZmZmNGVhNDJmZmIgIGNvbS5hcHBs
ZS5OZXRGUyAoNi4wIC0gNC4wKSA8ODFCMjJBRTctNzA5NC0zMEYyLUJGNDEtODRDQTA1RURCOTVC
PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9OZXRGUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9O
ZXRGUwogICAgMHg3ZmZmNGVhNDMwMDAgLSAgICAgMHg3ZmZmNGViYzFmZjcgIGNvbS5hcHBsZS5O
ZXR3b3JrRXh0ZW5zaW9uICgxLjAgLSAxKSA8Q0EyQ0VCMTktRUExRS0zMDY4LTlGRDEtNjQxMTE4
RUI4RTkxPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9OZXR3b3JrRXh0ZW5zaW9uLmZyYW1l
d29yay9WZXJzaW9ucy9BL05ldHdvcmtFeHRlbnNpb24KICAgIDB4N2ZmZjUxODJhMDAwIC0gICAg
IDB4N2ZmZjUxODMyZmVmICBsaWJjbGRjcHVlbmdpbmUuZHlsaWIgKDIuOC43KSA8REQ3ODEzMjUt
RDk0RS0zQUQ3LThENkMtODE3RkIzMDY4OTE3PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9P
cGVuQ0wuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGlicmFyaWVzL2xpYmNsZGNwdWVuZ2luZS5keWxp
YgogICAgMHg3ZmZmNTE4MzMwMDAgLSAgICAgMHg3ZmZmNTE4ODBmZmIgIGNvbS5hcHBsZS5vcGVu
Y2wgKDIuOC4xMiAtIDIuOC4xMikgPERCMjBDNTJELTk4RkQtMzlFRS1CMDc2LTk1MEI2Q0QzRTFC
Qj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkNMLmZyYW1ld29yay9WZXJzaW9ucy9B
L09wZW5DTAogICAgMHg3ZmZmNTE4ODEwMDAgLSAgICAgMHg3ZmZmNTE4OWRmZmIgIGNvbS5hcHBs
ZS5DRk9wZW5EaXJlY3RvcnkgKDEwLjEzIC0gMjA3KSA8Q0QzMzYwRTItNUU3RC0zQjhCLTk2QTMt
NUY1MDUxRjg2QjM4PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9PcGVuRGlyZWN0b3J5LmZy
YW1ld29yay9WZXJzaW9ucy9BL0ZyYW1ld29ya3MvQ0ZPcGVuRGlyZWN0b3J5LmZyYW1ld29yay9W
ZXJzaW9ucy9BL0NGT3BlbkRpcmVjdG9yeQogICAgMHg3ZmZmNTE4OWUwMDAgLSAgICAgMHg3ZmZm
NTE4YTlmZmYgIGNvbS5hcHBsZS5PcGVuRGlyZWN0b3J5ICgxMC4xMyAtIDIwNykgPDAwRjQ1MjlF
LUU4NTctM0Y3My1CNTJDLTJFMjE4NDkwQjg4NT4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3Mv
T3BlbkRpcmVjdG9yeS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9PcGVuRGlyZWN0b3J5CiAgICAweDdm
ZmY1MmEyODAwMCAtICAgICAweDdmZmY1MmEyYWZmZiAgbGliQ1ZNU1BsdWdpblN1cHBvcnQuZHls
aWIgKDE2LjQuMikgPEE5NjdCQzhCLUFCQjMtMzkzRi1CRjM0LUJEMzJCNDU4MzFGNz4gL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkdMLmZyYW1ld29yay9WZXJzaW9ucy9BL0xpYnJhcmll
cy9saWJDVk1TUGx1Z2luU3VwcG9ydC5keWxpYgogICAgMHg3ZmZmNTJhMmIwMDAgLSAgICAgMHg3
ZmZmNTJhMmZmZjcgIGxpYkNvcmVGU0NhY2hlLmR5bGliICgxNjIuNCkgPDgxM0EwQzI3LTY3NUEt
MzA3RC1CM0I4LUI3M0U0ODVCOTI4Rj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkdM
LmZyYW1ld29yay9WZXJzaW9ucy9BL0xpYnJhcmllcy9saWJDb3JlRlNDYWNoZS5keWxpYgogICAg
MHg3ZmZmNTJhMzAwMDAgLSAgICAgMHg3ZmZmNTJhMzRmZmYgIGxpYkNvcmVWTUNsaWVudC5keWxp
YiAoMTYyLjQpIDw4NDZGMUNERS04NkFBLTNGNTYtQkU4Ni04QTY0NUEwQzJDMEI+IC9TeXN0ZW0v
TGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMv
bGliQ29yZVZNQ2xpZW50LmR5bGliCiAgICAweDdmZmY1MmEzNTAwMCAtICAgICAweDdmZmY1MmEz
ZGZmZiAgbGliR0ZYU2hhcmVkLmR5bGliICgxNi40LjIpIDw4ODJBQjczOC1DODU4LTMxNzItQkUz
MC02RDU0NTMyNkQwMzQ+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9MaWJyYXJpZXMvbGliR0ZYU2hhcmVkLmR5bGliCiAgICAweDdmZmY1MmEz
ZTAwMCAtICAgICAweDdmZmY1MmE0OWZmZiAgbGliR0wuZHlsaWIgKDE2LjQuMikgPDk3RDY4NzFB
LUJBRjEtMzNERC05RUQ3LUJFN0JCNDM3RjM3OD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3Mv
T3BlbkdMLmZyYW1ld29yay9WZXJzaW9ucy9BL0xpYnJhcmllcy9saWJHTC5keWxpYgogICAgMHg3
ZmZmNTJhNGEwMDAgLSAgICAgMHg3ZmZmNTJhODVmZTcgIGxpYkdMSW1hZ2UuZHlsaWIgKDE2LjQu
MikgPDNFMjgwMkRGLTQ5OTgtMzFEQi1CM0EyLTY1NzIwREU5MTlBNT4gL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvT3BlbkdMLmZyYW1ld29yay9WZXJzaW9ucy9BL0xpYnJhcmllcy9saWJHTElt
YWdlLmR5bGliCiAgICAweDdmZmY1MmE4NjAwMCAtICAgICAweDdmZmY1MmJmMmZmZiAgbGliR0xQ
cm9ncmFtbWFiaWxpdHkuZHlsaWIgKDE2LjQuMikgPDM1MDVFRjIwLUZBM0QtMzIxQi04QzExLUQ5
Q0E3NDY1NkYzMD4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkdMLmZyYW1ld29yay9W
ZXJzaW9ucy9BL0xpYnJhcmllcy9saWJHTFByb2dyYW1tYWJpbGl0eS5keWxpYgogICAgMHg3ZmZm
NTJiZjMwMDAgLSAgICAgMHg3ZmZmNTJjMzFmZmIgIGxpYkdMVS5keWxpYiAoMTYuNC4yKSA8RUNB
QkNGQUItRTQwMC0zNjY3LThFRTEtNTg2QzA3RTBFMjE0PiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3
b3Jrcy9PcGVuR0wuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGlicmFyaWVzL2xpYkdMVS5keWxpYgog
ICAgMHg3ZmZmNTM1YTkwMDAgLSAgICAgMHg3ZmZmNTM1YjdmZmIgIGNvbS5hcHBsZS5vcGVuZ2wg
KDE2LjQuMiAtIDE2LjQuMikgPDQxNDkxMTk1LUYwNEItMzY2My04N0E1LTlDNzA2REQzRDUzRD4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvT3BlbkdMLmZyYW1ld29yay9WZXJzaW9ucy9BL09w
ZW5HTAogICAgMHg3ZmZmNTM1YjgwMDAgLSAgICAgMHg3ZmZmNTM3NGZmZmIgIEdMRW5naW5lICgx
Ni40LjIpIDw4RjM1NDg0RC05QzA5LTNENzktOTgyNS03RTczNjYxMzI2RDQ+IC9TeXN0ZW0vTGli
cmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SZXNvdXJjZXMvR0xF
bmdpbmUuYnVuZGxlL0dMRW5naW5lCiAgICAweDdmZmY1Mzc1MDAwMCAtICAgICAweDdmZmY1Mzc3
OGZmYiAgR0xSZW5kZXJlckZsb2F0ICgxNi40LjIpIDxFRkM3RjM5QS1CRDI4LTNDNEQtODBFRS02
QTQwQjk3MDlCM0M+IC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL09wZW5HTC5mcmFtZXdvcmsv
VmVyc2lvbnMvQS9SZXNvdXJjZXMvR0xSZW5kZXJlckZsb2F0LmJ1bmRsZS9HTFJlbmRlcmVyRmxv
YXQKICAgIDB4N2ZmZjUzY2UyMDAwIC0gICAgIDB4N2ZmZjUzZGNlZmYzICBjb20uYXBwbGUuUERG
S2l0ICgxLjAgLSA2NzcuNCkgPEI1RTQxRTczLTBGMTktMzAyNi1BMzBFLTEyMUY2NkEzODAxOT4g
L1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvUXVhcnR6LmZyYW1ld29yay9WZXJzaW9ucy9BL0Zy
YW1ld29ya3MvUERGS2l0LmZyYW1ld29yay9WZXJzaW9ucy9BL1BERktpdAogICAgMHg3ZmZmNTQz
ZmYwMDAgLSAgICAgMHg3ZmZmNTQ2NDdmZmYgIGNvbS5hcHBsZS5RdWFydHpDb3JlICgxLjExIC0g
NTg0LjguOTMpIDwzODRGQjRGMi1CMjcxLTM5QjAtODM4Qy1BNTIwRTRBRDhCOUQ+IC9TeXN0ZW0v
TGlicmFyeS9GcmFtZXdvcmtzL1F1YXJ0ekNvcmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUXVhcnR6
Q29yZQogICAgMHg3ZmZmNTRlODAwMDAgLSAgICAgMHg3ZmZmNTUxOTdmZmYgIGNvbS5hcHBsZS5z
ZWN1cml0eSAoNy4wIC0gNTgyODYuMzEuMikgPEVEREYwNTY4LURDRDktMzk2OC1BNTM4LTFGQTY5
REM1ODZDRj4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvU2VjdXJpdHkuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvU2VjdXJpdHkKICAgIDB4N2ZmZjU1MTk4MDAwIC0gICAgIDB4N2ZmZjU1MjIyZmY3
ICBjb20uYXBwbGUuc2VjdXJpdHlmb3VuZGF0aW9uICg2LjAgLSA1NTE4NS4zMC40KSA8QTEyMDE1
MjktMzcxOC0zMUM0LTlEOUUtQkJEMkEwNEI2NzUxPiAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jr
cy9TZWN1cml0eUZvdW5kYXRpb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvU2VjdXJpdHlGb3VuZGF0
aW9uCiAgICAweDdmZmY1NTI1NDAwMCAtICAgICAweDdmZmY1NTI1N2ZmYiAgY29tLmFwcGxlLnhw
Yy5TZXJ2aWNlTWFuYWdlbWVudCAoMS4wIC0gMSkgPEFBN0I1RkU1LUVGQzUtMzVEMS04NzQ1LUQ5
MDk0RTE4RDdCND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvU2VydmljZU1hbmFnZW1lbnQu
ZnJhbWV3b3JrL1ZlcnNpb25zL0EvU2VydmljZU1hbmFnZW1lbnQKICAgIDB4N2ZmZjU1NWZjMDAw
IC0gICAgIDB4N2ZmZjU1NjZjZmYzICBjb20uYXBwbGUuU3lzdGVtQ29uZmlndXJhdGlvbiAoMS4x
NyAtIDEuMTcpIDwzQzZCMkJCOS00M0FCLTM5QUQtODAyNy0zOEUzMEE4QTQxODY+IC9TeXN0ZW0v
TGlicmFyeS9GcmFtZXdvcmtzL1N5c3RlbUNvbmZpZ3VyYXRpb24uZnJhbWV3b3JrL1ZlcnNpb25z
L0EvU3lzdGVtQ29uZmlndXJhdGlvbgogICAgMHg3ZmZmNTU4MjEwMDAgLSAgICAgMHg3ZmZmNTVi
OWFmZjcgIGNvbS5hcHBsZS5WaWRlb1Rvb2xib3ggKDEuMCAtIDIyNjcuNDAuNSkgPENDODhGRkIz
LTVEQkUtMzNDMC1BRjhELTJDOTE1RDkxNUEyND4gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3Mv
VmlkZW9Ub29sYm94LmZyYW1ld29yay9WZXJzaW9ucy9BL1ZpZGVvVG9vbGJveAogICAgMHg3ZmZm
NTgyNGEwMDAgLSAgICAgMHg3ZmZmNTgyZDZmZjcgIGNvbS5hcHBsZS5BUEZTICgxLjAgLSAxKSA8
ODM0RUFENUYtMEM0RS0zQzMzLUE2NTQtOEUxNjcwQ0VDNDU3PiAvU3lzdGVtL0xpYnJhcnkvUHJp
dmF0ZUZyYW1ld29ya3MvQVBGUy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BUEZTCiAgICAweDdmZmY1
OGVlNDAwMCAtICAgICAweDdmZmY1OGYwY2ZmZiAgY29tLmFwcGxlLmZyYW1ld29yay5BcHBsZTgw
MjExICgxMy4wIC0gMTM0NSkgPEZBODIyMzM3LTEyRUMtM0JGQy04Qzc1LUZBQzYxRDhENTQwMj4g
L1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0FwcGxlODAyMTEuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvQXBwbGU4MDIxMQogICAgMHg3ZmZmNThmMGUwMDAgLSAgICAgMHg3ZmZmNThmMWRm
ZjcgIGNvbS5hcHBsZS5BcHBsZUZTQ29tcHJlc3Npb24gKDk2LjMwLjIgLSAxLjApIDxDQjAxQTQy
Ri0yMDc1LTNGOUUtOUFBMC1DNjgyM0E4NTU4NzU+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJh
bWV3b3Jrcy9BcHBsZUZTQ29tcHJlc3Npb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBwbGVGU0Nv
bXByZXNzaW9uCiAgICAweDdmZmY1OGYxZTAwMCAtICAgICAweDdmZmY1OTAwMmZmNyAgY29tLmFw
cGxlLkFwcGxlR1ZBRnJhbWV3b3JrICgxMS4zLjcgLSAxMS4zLjcpIDxENzU5MkYyNC1DRTk3LTNC
OUEtQTdBMC05MzYxNUFCMEMwMzk+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9B
cHBsZUdWQS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9BcHBsZUdWQQogICAgMHg3ZmZmNTkwNTkwMDAg
LSAgICAgMHg3ZmZmNTkwYTFmZjMgIGNvbS5hcHBsZS5BcHBsZUpQRUcgKDEuMCAtIDEpIDw4QkJE
NTE4MC01QkY5LTMzREItOEI5MS05NzRCMUQwQUVDRkI+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRl
RnJhbWV3b3Jrcy9BcHBsZUpQRUcuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBwbGVKUEVHCiAgICAw
eDdmZmY1OTBkMzAwMCAtICAgICAweDdmZmY1OTBkYmZmMyAgY29tLmFwcGxlLkFwcGxlU1JQICg1
LjAgLSAxKSA8NENFQzM0Q0YtNjNFMy0zMDIzLUI2MUItRjhEMTMzNjk4NTM0PiAvU3lzdGVtL0xp
YnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQXBwbGVTUlAuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBw
bGVTUlAKICAgIDB4N2ZmZjU5MGRjMDAwIC0gICAgIDB4N2ZmZjU5MTA0ZmZmICBjb20uYXBwbGUu
YXBwbGVzYXVjZSAoMS4wIC0gPz8/KSA8MzJGRjQ4NTEtMkY2OC0zNUJBLTgzNUYtOTE4NTZBMjBD
MzIzPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQXBwbGVTYXVjZS5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9BcHBsZVNhdWNlCiAgICAweDdmZmY1OTFkMTAwMCAtICAgICAweDdmZmY1
OTIyMWZmNyAgY29tLmFwcGxlLkFwcGxlVkFGcmFtZXdvcmsgKDUuMC4zOSAtIDUuMC4zOSkgPDY1
MjcyREE0LUQ5OUItM0I5Ni05RDU2LURCREFENjM0MTgxRj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL0FwcGxlVkEuZnJhbWV3b3JrL1ZlcnNpb25zL0EvQXBwbGVWQQogICAgMHg3
ZmZmNTk4ZjAwMDAgLSAgICAgMHg3ZmZmNTk4ZjdmZjcgIGNvbS5hcHBsZS5jb3Jlc2VydmljZXMu
QmFja2dyb3VuZFRhc2tNYW5hZ2VtZW50ICgxLjAgLSA1Ny4xKSA8NDdCNjMwMUYtRDkwOC0zODEx
LUJCOUUtREExNkQ5QjI5QTM0PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQmFj
a2dyb3VuZFRhc2tNYW5hZ2VtZW50LmZyYW1ld29yay9WZXJzaW9ucy9BL0JhY2tncm91bmRUYXNr
TWFuYWdlbWVudAogICAgMHg3ZmZmNTk4ZjgwMDAgLSAgICAgMHg3ZmZmNTk5N2ZmZjcgIGNvbS5h
cHBsZS5iYWNrdXAuZnJhbWV3b3JrICgxLjkuMiAtIDEuOS4yKSA8RjQ2MUI5N0ItQkEzMy0zQ0NB
LUE2RUQtMzlFNTgxQ0M0Mjg3PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQmFj
a3VwLmZyYW1ld29yay9WZXJzaW9ucy9BL0JhY2t1cAogICAgMHg3ZmZmNWIzMGUwMDAgLSAgICAg
MHg3ZmZmNWIzMTdmZjMgIGNvbS5hcHBsZS5Db21tb25BdXRoICg0LjAgLSAyLjApIDwxMUIyRDE4
NC0zNkI4LTM2MjQtQjFBRC03QjYwMzdENzYxNjA+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJh
bWV3b3Jrcy9Db21tb25BdXRoLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvbW1vbkF1dGgKICAgIDB4
N2ZmZjViNWE4MDAwIC0gICAgIDB4N2ZmZjViOTg4ZmZmICBjb20uYXBwbGUuQ29yZUFVQyAoMjQ5
LjAuMCAtIDI0OS4wLjApIDw3RjQwNjI3MS1BMjE1LTNDNzUtQkRBQS1COTYxMUJBMjgyMkU+IC9T
eXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9Db3JlQVVDLmZyYW1ld29yay9WZXJzaW9u
cy9BL0NvcmVBVUMKICAgIDB4N2ZmZjViOTg5MDAwIC0gICAgIDB4N2ZmZjViOWI5ZmY3ICBjb20u
YXBwbGUuQ29yZUFWQ0hEICg1LjkuMCAtIDU5MDAuNC4xKSA8RDA4NzlEOEYtNDg4QS0zRDQ2LUJD
NTAtQUQ3QjA2NDJDMEU4PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZUFW
Q0hELmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVBVkNIRAogICAgMHg3ZmZmNWJiYjQwMDAgLSAg
ICAgMHg3ZmZmNWJiYmRmZjcgIGNvbS5hcHBsZS5mcmFtZXdvcmtzLkNvcmVEYWVtb24gKDEuMyAt
IDEuMykgPDBBODdBOTFDLUEyQ0YtM0JCMS05MDM4LTdGNjEwMTExQkMzMD4gL1N5c3RlbS9MaWJy
YXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0NvcmVEYWVtb24uZnJhbWV3b3JrL1ZlcnNpb25zL0IvQ29y
ZURhZW1vbgogICAgMHg3ZmZmNWJkMjQwMDAgLSAgICAgMHg3ZmZmNWJkMzRmZjcgIGNvbS5hcHBs
ZS5Db3JlRW1vamkgKDEuMCAtIDY5LjMpIDxBNDM1N0Y1Qy0wQzM4LTNBNjEtQjQ1Ni1ENzMyMUVC
MkNFRTU+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9Db3JlRW1vamkuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvQ29yZUVtb2ppCiAgICAweDdmZmY1YzkyZDAwMCAtICAgICAweDdmZmY1
YzkzMmZmNyAgY29tLmFwcGxlLkNvcmVPcHRpbWl6YXRpb24gKDEuMCAtIDEpIDw3ODVCNjIyQi04
RjdELTNCNEQtODNBRi1FQjk4Q0I3OUZGRjY+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3
b3Jrcy9Db3JlT3B0aW1pemF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0NvcmVPcHRpbWl6YXRp
b24KICAgIDB4N2ZmZjVjOTMzMDAwIC0gICAgIDB4N2ZmZjVjOWQ4ZmY3ICBjb20uYXBwbGUuQ29y
ZVBERiAoNC4wIC0gNDE0KSA8MkYwNDQ3REItODI2Qi0zQ0VDLUE5OEMtQjhBOERERUExQjI2PiAv
U3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZVBERi5mcmFtZXdvcmsvVmVyc2lv
bnMvQS9Db3JlUERGCiAgICAweDdmZmY1Y2E4MTAwMCAtICAgICAweDdmZmY1Y2FkZGZmZiAgY29t
LmFwcGxlLkNvcmVQcmVkaWN0aW9uICgxLjAgLSAxKSA8QjFFNjg3QkEtNEU2Mi0zMjFCLThDODct
RDM3QzU0MEE1QTY4PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZVByZWRp
Y3Rpb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvQ29yZVByZWRpY3Rpb24KICAgIDB4N2ZmZjVjYzBh
MDAwIC0gICAgIDB4N2ZmZjVjYzNiZmYzICBjb20uYXBwbGUuQ29yZVNlcnZpY2VzSW50ZXJuYWwg
KDMwOS4xIC0gMzA5LjEpIDxBMTRGQ0RBRS1CNTg5LTNEQTctQTRBNS1GMDc2RTExMEQzRUY+IC9T
eXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9Db3JlU2VydmljZXNJbnRlcm5hbC5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9Db3JlU2VydmljZXNJbnRlcm5hbAogICAgMHg3ZmZmNWNmOGEwMDAg
LSAgICAgMHg3ZmZmNWQwMWJmZmYgIGNvbS5hcHBsZS5Db3JlU3ltYm9saWNhdGlvbiAoNjMwNzUp
IDxEOUI4OTNENi0zODBELTM3MUEtOERGRS1FRDJENUI2QzJGQjM+IC9TeXN0ZW0vTGlicmFyeS9Q
cml2YXRlRnJhbWV3b3Jrcy9Db3JlU3ltYm9saWNhdGlvbi5mcmFtZXdvcmsvVmVyc2lvbnMvQS9D
b3JlU3ltYm9saWNhdGlvbgogICAgMHg3ZmZmNWQwOWUwMDAgLSAgICAgMHg3ZmZmNWQxZDJmZmYg
IGNvbS5hcHBsZS5jb3JldWkgKDIuMSAtIDQ5Mi4yKSA8RTEyNDU1RDktNzZBMy0zOEJGLTgyMDct
NTQ5Q0Y1NjY1MTM3PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvQ29yZVVJLmZy
YW1ld29yay9WZXJzaW9ucy9BL0NvcmVVSQogICAgMHg3ZmZmNWQxZDMwMDAgLSAgICAgMHg3ZmZm
NWQyZGVmZjMgIGNvbS5hcHBsZS5Db3JlVXRpbHMgKDUuMyAtIDUzMC41NykgPDBFMzg1NURFLUI4
MTgtMzJCRi05MkZELURFMzVBMzlGM0FDQj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdv
cmtzL0NvcmVVdGlscy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Db3JlVXRpbHMKICAgIDB4N2ZmZjVk
MzMzMDAwIC0gICAgIDB4N2ZmZjVkMzk3ZmZmICBjb20uYXBwbGUuZnJhbWV3b3JrLkNvcmVXaUZp
ICgxMy4wIC0gMTMzOSkgPDE3NDFGRDZELTNERjItM0QyRC05QjU2LTkyQTZBQTBEMTE0Nj4gL1N5
c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0NvcmVXaUZpLmZyYW1ld29yay9WZXJzaW9u
cy9BL0NvcmVXaUZpCiAgICAweDdmZmY1ZDM5ODAwMCAtICAgICAweDdmZmY1ZDNhN2ZmNyAgY29t
LmFwcGxlLkNyYXNoUmVwb3J0ZXJTdXBwb3J0ICgxMC4xMyAtIDEpIDw2QjVCMkI3OC0xNUQyLTM2
M0YtQkUzNC04RjkyMjZFNzlFMjQ+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9D
cmFzaFJlcG9ydGVyU3VwcG9ydC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9DcmFzaFJlcG9ydGVyU3Vw
cG9ydAogICAgMHg3ZmZmNWQ0MjQwMDAgLSAgICAgMHg3ZmZmNWQ0MzNmZjcgIGNvbS5hcHBsZS5m
cmFtZXdvcmsuREZSRm91bmRhdGlvbiAoMS4wIC0gMTkxLjEpIDw4N0I4MzM0OS1DMzE3LTNFMDct
ODk0Qy01QkM1QzIwQUUwOEI+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9ERlJG
b3VuZGF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL0RGUkZvdW5kYXRpb24KICAgIDB4N2ZmZjVk
NDM2MDAwIC0gICAgIDB4N2ZmZjVkNDNhZmZiICBjb20uYXBwbGUuRFNFeHRlcm5hbERpc3BsYXkg
KDMuMSAtIDM4MCkgPEJFQzA3QzdDLUYzQUMtM0NGMy1CMTNFLTNFQkZENjIyNEMwRD4gL1N5c3Rl
bS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0RTRXh0ZXJuYWxEaXNwbGF5LmZyYW1ld29yay9W
ZXJzaW9ucy9BL0RTRXh0ZXJuYWxEaXNwbGF5CiAgICAweDdmZmY1ZDRjMDAwMCAtICAgICAweDdm
ZmY1ZDUzNmZmZiAgY29tLmFwcGxlLmRhdGFkZXRlY3RvcnNjb3JlICg3LjAgLSA1OTAuMykgPDc5
MjU5M0JDLTIxQzctM0UwQy05MjlFLTA2N0NENzI1RkNCRD4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL0RhdGFEZXRlY3RvcnNDb3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL0RhdGFE
ZXRlY3RvcnNDb3JlCiAgICAweDdmZmY1ZDU4NDAwMCAtICAgICAweDdmZmY1ZDVjNGZmNyAgY29t
LmFwcGxlLkRlYnVnU3ltYm9scyAoMTQxIC0gMTQxKSA8OTk1NjJFMjgtMEU1Ni0zRjZGLTkzQTEt
RUY5OTdBNUUxRjg3PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvRGVidWdTeW1i
b2xzLmZyYW1ld29yay9WZXJzaW9ucy9BL0RlYnVnU3ltYm9scwogICAgMHg3ZmZmNWQ1YzUwMDAg
LSAgICAgMHg3ZmZmNWQ2ZjRmZmYgIGNvbS5hcHBsZS5kZXNrdG9wc2VydmljZXMgKDEuMTIuMiAt
IDEuMTIuMikgPDg1RDE3M0U0LUU4NjAtM0ZGOS1BOUYyLThGMzU0MTVEREU0RT4gL1N5c3RlbS9M
aWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0Rlc2t0b3BTZXJ2aWNlc1ByaXYuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvRGVza3RvcFNlcnZpY2VzUHJpdgogICAgMHg3ZmZmNWQ3ZTYwMDAgLSAgICAgMHg3
ZmZmNWQ4YjhmZjcgIGNvbS5hcHBsZS5EaXNrSW1hZ2VzRnJhbWV3b3JrICg0ODAuMzAuMiAtIDQ4
MC4zMC4yKSA8MjUxRDA0N0QtRDc5QS0zMzAwLThERkMtRDZENkQ0RDAwMTVEPiAvU3lzdGVtL0xp
YnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvRGlza0ltYWdlcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9E
aXNrSW1hZ2VzCiAgICAweDdmZmY1ZDhiOTAwMCAtICAgICAweDdmZmY1ZDkzMGZmNyAgY29tLmFw
cGxlLkRpc2tNYW5hZ2VtZW50ICgxMS4yIC0gMTMzOSkgPDJFNTgwOUY5LUExNjUtMzU0Ny1BRDI2
LTlEOUJDMTQ5MjBBOT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0Rpc2tNYW5h
Z2VtZW50LmZyYW1ld29yay9WZXJzaW9ucy9BL0Rpc2tNYW5hZ2VtZW50CiAgICAweDdmZmY1ZDk4
ZTAwMCAtICAgICAweDdmZmY1ZDljM2ZmZiAgY29tLmFwcGxlLlN5c3RlbUNvbmZpZ3VyYXRpb24u
RUFQODAyMVggKDE0LjAuMCAtIDE0LjApIDwyRUVCNjI3Ri1DNkRFLTNGRjktQUJERi0zNjkxQzVE
MjhFOTg+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9FQVA4MDIxWC5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9FQVA4MDIxWAogICAgMHg3ZmZmNWQ5YzQwMDAgLSAgICAgMHg3ZmZmNWQ5
YzZmZjcgIGNvbS5hcHBsZS5FRklMb2dpbiAoMi4wIC0gMikgPDVCNkU1QTczLUMyQjItMzE4OC1B
REU5LUMyOUNFMjlCQjIyNT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0VGSUxv
Z2luLmZyYW1ld29yay9WZXJzaW9ucy9BL0VGSUxvZ2luCiAgICAweDdmZmY1ZTQ2ODAwMCAtICAg
ICAweDdmZmY1ZTg5NmZmZiAgY29tLmFwcGxlLnZpc2lvbi5GYWNlQ29yZSAoMy4zLjIgLSAzLjMu
MikgPDgwQzk3QUQ3LUQ1QzItMzExQS1CMjY4LTRBQTYwQ0FENkNFRD4gL1N5c3RlbS9MaWJyYXJ5
L1ByaXZhdGVGcmFtZXdvcmtzL0ZhY2VDb3JlLmZyYW1ld29yay9WZXJzaW9ucy9BL0ZhY2VDb3Jl
CiAgICAweDdmZmY2MDRmZTAwMCAtICAgICAweDdmZmY2MDRmZWZmZiAgbGlibWV0YWxfdGltZXN0
YW1wLmR5bGliICg4MDIuMy4xNCkgPDM0Rjk0QTkyLTgyNDctM0UwRi1CODRFLTZDMzFGOTlCOTA4
Rj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0dQVUNvbXBpbGVyLmZyYW1ld29y
ay9WZXJzaW9ucy8zODAyL0xpYnJhcmllcy9saWJtZXRhbF90aW1lc3RhbXAuZHlsaWIKICAgIDB4
N2ZmZjYxYjVlMDAwIC0gICAgIDB4N2ZmZjYxYjY5ZmY3ICBsaWJHUFVTdXBwb3J0TWVyY3VyeS5k
eWxpYiAoMTYuNC4yKSA8RjVCQTVEN0EtRkQyMy0zNDE2LUI5QjMtN0VBQkZENDI3OUQ1PiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvR1BVU3VwcG9ydC5mcmFtZXdvcmsvVmVyc2lv
bnMvQS9MaWJyYXJpZXMvbGliR1BVU3VwcG9ydE1lcmN1cnkuZHlsaWIKICAgIDB4N2ZmZjYyOGFh
MDAwIC0gICAgIDB4N2ZmZjYyOGI5ZmZmICBjb20uYXBwbGUuR3JhcGhWaXN1YWxpemVyICgxLjAg
LSA1KSA8MEE5M0M1REUtMEQyOC0zMTJFLTg3NjQtNkIwRkI4MDVFRDkxPiAvU3lzdGVtL0xpYnJh
cnkvUHJpdmF0ZUZyYW1ld29ya3MvR3JhcGhWaXN1YWxpemVyLmZyYW1ld29yay9WZXJzaW9ucy9B
L0dyYXBoVmlzdWFsaXplcgogICAgMHg3ZmZmNjI5MzAwMDAgLSAgICAgMHg3ZmZmNjI5YTRmZmYg
IGNvbS5hcHBsZS5IZWltZGFsICg0LjAgLSAyLjApIDxBQ0MxMzJFNS05N0YxLTNCMzYtQUQ3Qi00
RTZDQzA3N0U2OTE+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9IZWltZGFsLmZy
YW1ld29yay9WZXJzaW9ucy9BL0hlaW1kYWwKICAgIDB4N2ZmZjYzMjU2MDAwIC0gICAgIDB4N2Zm
ZjYzMjVkZmZiICBjb20uYXBwbGUuSU9BY2NlbGVyYXRvciAoMzc2LjYgLSAzNzYuNikgPDMzN0Y1
RDhDLTRENzEtMzMzMi05NDI4LUZCMjY3MzJCRUU3MT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVG
cmFtZXdvcmtzL0lPQWNjZWxlcmF0b3IuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSU9BY2NlbGVyYXRv
cgogICAgMHg3ZmZmNjMyNjEwMDAgLSAgICAgMHg3ZmZmNjMyNzhmZmYgIGNvbS5hcHBsZS5JT1By
ZXNlbnRtZW50ICgxLjAgLSAzMi4xKSA8Qjk1RjA2RUEtOUQ1RC0zMTFELTk5MTItOTc4QUU0MkVD
RkNFPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvSU9QcmVzZW50bWVudC5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9JT1ByZXNlbnRtZW50CiAgICAweDdmZmY2MzY0MjAwMCAtICAgICAw
eDdmZmY2MzY2N2ZmZiAgY29tLmFwcGxlLkljb25TZXJ2aWNlcyAoOTcuNCAtIDk3LjQpIDxDRDQ4
RjY2My00MEQ5LTM4NzEtQkM3Qy1FRkM4RkRBOEJENTU+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRl
RnJhbWV3b3Jrcy9JY29uU2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSWNvblNlcnZpY2Vz
CiAgICAweDdmZmY2Mzc3MTAwMCAtICAgICAweDdmZmY2Mzc3NGZmMyAgY29tLmFwcGxlLkludGVy
bmF0aW9uYWxTdXBwb3J0ICgxLjAgLSAxKSA8NUFCMzgyRkQtQkY4MS0zNkExLTk1NjUtNjFGMUZE
Mzk4RUNBPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvSW50ZXJuYXRpb25hbFN1
cHBvcnQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvSW50ZXJuYXRpb25hbFN1cHBvcnQKICAgIDB4N2Zm
ZjYzN2UyMDAwIC0gICAgIDB4N2ZmZjYzN2YyZmZiICBjb20uYXBwbGUuSW50bFByZWZlcmVuY2Vz
ICgyLjAgLSAyMjcpIDwwRkY3MjA5Qi0wRTRELTM0MTEtQjMyNS0wMzkzOEI3QzA5Mzg+IC9TeXN0
ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9JbnRsUHJlZmVyZW5jZXMuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvSW50bFByZWZlcmVuY2VzCiAgICAweDdmZmY2MzhmYzAwMCAtICAgICAweDdmZmY2
MzlmMWZmZiAgY29tLmFwcGxlLkxhbmd1YWdlTW9kZWxpbmcgKDEuMCAtIDE1OS4zLjEpIDw5QjA4
RTE4RS02OUI0LTM0MTMtQTAzQS1FRjVBRTRCRTYyNzc+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRl
RnJhbWV3b3Jrcy9MYW5ndWFnZU1vZGVsaW5nLmZyYW1ld29yay9WZXJzaW9ucy9BL0xhbmd1YWdl
TW9kZWxpbmcKICAgIDB4N2ZmZjYzOWYyMDAwIC0gICAgIDB4N2ZmZjYzYTM0ZmY3ICBjb20uYXBw
bGUuTGV4aWNvbi1mcmFtZXdvcmsgKDEuMCAtIDMzLjIpIDw1Q0M1RThFRS02MkExLTNFQTUtQjMw
MC1BMzlBQkQwQ0YxMkQ+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9MZXhpY29u
LmZyYW1ld29yay9WZXJzaW9ucy9BL0xleGljb24KICAgIDB4N2ZmZjYzYTM4MDAwIC0gICAgIDB4
N2ZmZjYzYTNmZmY3ICBjb20uYXBwbGUuTGluZ3Vpc3RpY0RhdGEgKDEuMCAtIDIzOC4zKSA8MjI4
QUY3Q0EtNjQ5QS0zRTI0LUJCQzctOEEyNEIzOUIzRkM0PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0
ZUZyYW1ld29ya3MvTGluZ3Vpc3RpY0RhdGEuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTGluZ3Vpc3Rp
Y0RhdGEKICAgIDB4N2ZmZjYzYjI2MDAwIC0gICAgIDB4N2ZmZjYzYjJiZmZmICBjb20uYXBwbGUu
TG9naW5VSUNvcmUgKDQuMCAtIDQuMCkgPEE1RjJFRjJFLTA5OTktMzc2RC04M0VGLTFCNjYxNzFD
NTcyMz4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL0xvZ2luVUlLaXQuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvRnJhbWV3b3Jrcy9Mb2dpblVJQ29yZS5mcmFtZXdvcmsvVmVyc2lvbnMv
QS9Mb2dpblVJQ29yZQogICAgMHg3ZmZmNjQyNjMwMDAgLSAgICAgMHg3ZmZmNjQyNjZmZmYgIGNv
bS5hcHBsZS5NYW5ncm92ZSAoMS4wIC0gMSkgPDEzODMyMjIyLThBNkItMzc5MC04OTE0LUJFODc0
QjVFRDRERD4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL01hbmdyb3ZlLmZyYW1l
d29yay9WZXJzaW9ucy9BL01hbmdyb3ZlCiAgICAweDdmZmY2NDM3ZjAwMCAtICAgICAweDdmZmY2
NDNiMmZmNyAgY29tLmFwcGxlLk1lZGlhS2l0ICgxNiAtIDg3MSkgPDQ3QTVCODcyLTQxMzktMzE1
RC1BMDQ3LTU4MUY5QzQ4NUQxNT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL01l
ZGlhS2l0LmZyYW1ld29yay9WZXJzaW9ucy9BL01lZGlhS2l0CiAgICAweDdmZmY2NDNiMzAwMCAt
ICAgICAweDdmZmY2NDVmN2ZmNyAgY29tLmFwcGxlLk1lZGlhUmVtb3RlICgxLjAgLSAxKSA8QURE
QzI5MTctNzZDMC0zRjA3LThEQkYtNzQ2QzlDQTZBOUJFPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0
ZUZyYW1ld29ya3MvTWVkaWFSZW1vdGUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvTWVkaWFSZW1vdGUK
ICAgIDB4N2ZmZjY0NWY4MDAwIC0gICAgIDB4N2ZmZjY0NjE3ZmYzICBjb20uYXBwbGUuTWVkaWFT
ZXJ2aWNlcyAoMS4wIC0gMSkgPDJDQTc0MEE2LTdFMjYtMzg2NS04QTVCLUMyOTEyNjY1RDAxQz4g
L1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL01lZGlhU2VydmljZXMuZnJhbWV3b3Jr
L1ZlcnNpb25zL0EvTWVkaWFTZXJ2aWNlcwogICAgMHg3ZmZmNjQ2OGIwMDAgLSAgICAgMHg3ZmZm
NjQ2ZjRmZjcgIGNvbS5hcHBsZS5ncHVzdy5NZXRhbFRvb2xzICgxLjAgLSAxKSA8Rjc3OTQzQkMt
MDQ2Ni0zNzAwLUJFREYtQ0REMTMxMjVEMzZBPiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1l
d29ya3MvTWV0YWxUb29scy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9NZXRhbFRvb2xzCiAgICAweDdm
ZmY2NDZmYzAwMCAtICAgICAweDdmZmY2NDcxMWZmMyAgY29tLmFwcGxlLk1vYmlsZUFzc2V0cyAo
MS4wIC0gNDM3LjMwLjE3KSA8OUMwMTQzNTAtRDc2RS0zMTQzLUFDRkYtRjNEMUIyNjY4OTg4PiAv
U3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvTW9iaWxlQXNzZXQuZnJhbWV3b3JrL1Zl
cnNpb25zL0EvTW9iaWxlQXNzZXQKICAgIDB4N2ZmZjY0OTBiMDAwIC0gICAgIDB4N2ZmZjY0OTMz
ZmZmICBjb20uYXBwbGUuTXVsdGl0b3VjaFN1cHBvcnQuZnJhbWV3b3JrICgxMjA0LjEzIC0gMTIw
NC4xMykgPDZDNUQ3NzhELTRBQjctMzlBNC05ODlCLTJFOEQyRDU3QjNBMD4gL1N5c3RlbS9MaWJy
YXJ5L1ByaXZhdGVGcmFtZXdvcmtzL011bHRpdG91Y2hTdXBwb3J0LmZyYW1ld29yay9WZXJzaW9u
cy9BL011bHRpdG91Y2hTdXBwb3J0CiAgICAweDdmZmY2NGI5ODAwMCAtICAgICAweDdmZmY2NGJh
M2ZmZiAgY29tLmFwcGxlLk5ldEF1dGggKDYuMiAtIDYuMikgPDVDNkY0OTJBLTI4RUYtM0EwRS1C
NTczLTZGM0Q2MENGRjBDNz4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL05ldEF1
dGguZnJhbWV3b3JrL1ZlcnNpb25zL0EvTmV0QXV0aAogICAgMHg3ZmZmNjRiYjAwMDAgLSAgICAg
MHg3ZmZmNjRjN2RmZjcgIGNvbS5hcHBsZS5OZXR3b3JrICgxLjAgLSAxKSA8OUJDNTAxMjctQzQy
NS0zMDJDLUIxM0UtM0MzRDVGRTUzMTQ0PiAvU3lzdGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29y
a3MvTmV0d29yay5mcmFtZXdvcmsvVmVyc2lvbnMvQS9OZXR3b3JrCiAgICAweDdmZmY2NWFkYTAw
MCAtICAgICAweDdmZmY2NWFkZmZmZiAgY29tLmFwcGxlLlBJUCAoMS4wIC0gODMuMSkgPDZCODQx
QzkwLUNEMzYtMzhERi1BNTcxLTUwMjJGMDA3QTUyRj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVG
cmFtZXdvcmtzL1BJUC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9QSVAKICAgIDB4N2ZmZjY2M2E1MDAw
IC0gICAgIDB4N2ZmZjY2M2U1ZmZiICBjb20uYXBwbGUuUGVyZm9ybWFuY2VBbmFseXNpcyAoMS4x
ODMuMSAtIDE4My4xKSA8Qjg1QUQ5ODUtMUYxQS0zRUE1LUJEQ0ItNEFDNTIwQ0Q4QjNCPiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvUGVyZm9ybWFuY2VBbmFseXNpcy5mcmFtZXdv
cmsvVmVyc2lvbnMvQS9QZXJmb3JtYW5jZUFuYWx5c2lzCiAgICAweDdmZmY2N2U0YTAwMCAtICAg
ICAweDdmZmY2N2U2ZmZmZiAgY29tLmFwcGxlLnBsdWdpbmtpdC5mcmFtZXdvcmsgKDEuMCAtIDEp
IDw4RjJGMjhCRC1DRTA3LTNCQjktQkQ3RC03OEQ3OUVCMzE5Qzg+IC9TeXN0ZW0vTGlicmFyeS9Q
cml2YXRlRnJhbWV3b3Jrcy9QbHVnSW5LaXQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUGx1Z0luS2l0
CiAgICAweDdmZmY2ODE2ZTAwMCAtICAgICAweDdmZmY2ODFjMWZmZiAgY29tLmFwcGxlLlByb3Rl
Y3RlZENsb3VkU3RvcmFnZSAoMS4wIC0gMSkgPDAwREY3MTUxLTFDODAtM0IxOC05ODkxLThGRjc2
OTg5ODE4Nj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1Byb3RlY3RlZENsb3Vk
U3RvcmFnZS5mcmFtZXdvcmsvVmVyc2lvbnMvQS9Qcm90ZWN0ZWRDbG91ZFN0b3JhZ2UKICAgIDB4
N2ZmZjY4MWMyMDAwIC0gICAgIDB4N2ZmZjY4MWUwZmZmICBjb20uYXBwbGUuUHJvdG9jb2xCdWZm
ZXIgKDEgLSAyNTkpIDxEMDQ3QTNGRS1DN0E4LTNDQUEtOTg5MS02MjMyQkE4OEMyNDc+IC9TeXN0
ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9Qcm90b2NvbEJ1ZmZlci5mcmFtZXdvcmsvVmVy
c2lvbnMvQS9Qcm90b2NvbEJ1ZmZlcgogICAgMHg3ZmZmNjgzNjMwMDAgLSAgICAgMHg3ZmZmNjgz
NmJmZjMgIGNvbS5hcHBsZS5SVENSZXBvcnRpbmcgKDkuMzIuMzUuMSAtIDkuMzIuMzUuMSkgPEZC
OUIxNUNELTVEQjUtMzEwQi1COTFBLTY1OTlDQjE3MjAzMT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL1JUQ1JlcG9ydGluZy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9SVENSZXBvcnRp
bmcKICAgIDB4N2ZmZjY4M2I0MDAwIC0gICAgIDB4N2ZmZjY4M2JmZmZmICBjb20uYXBwbGUueHBj
LlJlbW90ZVNlcnZpY2VEaXNjb3ZlcnkgKDEuMCAtIDEyMDUuMzAuMjkpIDxFMkFFQTBENy0yM0U2
LTMxOTgtOTZFRi0yRjFGOEFDRDk4QjQ+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jr
cy9SZW1vdGVTZXJ2aWNlRGlzY292ZXJ5LmZyYW1ld29yay9WZXJzaW9ucy9BL1JlbW90ZVNlcnZp
Y2VEaXNjb3ZlcnkKICAgIDB4N2ZmZjY4M2MwMDAwIC0gICAgIDB4N2ZmZjY4M2UzZmZiICBjb20u
YXBwbGUuUmVtb3RlVmlld1NlcnZpY2VzICgyLjAgLSAxMjUpIDxBRURCQ0U4Qy04OEI3LTMxNUEt
OUY4MS0zRTA2OEYwRDNFREM+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9SZW1v
dGVWaWV3U2VydmljZXMuZnJhbWV3b3JrL1ZlcnNpb25zL0EvUmVtb3RlVmlld1NlcnZpY2VzCiAg
ICAweDdmZmY2ODNlNDAwMCAtICAgICAweDdmZmY2ODNmNWZmYiAgY29tLmFwcGxlLnhwYy5SZW1v
dGVYUEMgKDEuMCAtIDEyMDUuMzAuMjkpIDwxRkQ1M0VDNi1BOUU5LTNBRUMtODZBNy1DNTI3MjlE
MUExMzU+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9SZW1vdGVYUEMuZnJhbWV3
b3JrL1ZlcnNpb25zL0EvUmVtb3RlWFBDCiAgICAweDdmZmY2OWNmYzAwMCAtICAgICAweDdmZmY2
OWUwY2ZmNyAgY29tLmFwcGxlLlNoYXJpbmcgKDk3Mi42IC0gOTcyLjYpIDxBNEZCQjNCNC03NUNF
LTMyMEYtQjM5Qy0yQ0NEQzE1QkQzMUU+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jr
cy9TaGFyaW5nLmZyYW1ld29yay9WZXJzaW9ucy9BL1NoYXJpbmcKICAgIDB4N2ZmZjY5ZTM2MDAw
IC0gICAgIDB4N2ZmZjY5ZTM3ZmZmICBjb20uYXBwbGUucGVyZm9ybWFuY2UuU2lnbnBvc3ROb3Rp
ZmljYXRpb24gKDEuMCAtIDEpIDxENEM5NjdCQS05MkM2LTNCQUItQUZCNS01OUY5OEIzNUY5MjE+
IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9TaWducG9zdE5vdGlmaWNhdGlvbi5m
cmFtZXdvcmsvVmVyc2lvbnMvQS9TaWducG9zdE5vdGlmaWNhdGlvbgogICAgMHg3ZmZmNmFiMzMw
MDAgLSAgICAgMHg3ZmZmNmFkY2RmZmYgIGNvbS5hcHBsZS5Ta3lMaWdodCAoMS42MDAuMCAtIDMx
Mi4yMy40KSA8OTUyQTI3NTctREU1Qy0zMTg4LTk4RDAtRUQ1NkM1RDYyNDExPiAvU3lzdGVtL0xp
YnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvU2t5TGlnaHQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvU2t5
TGlnaHQKICAgIDB4N2ZmZjZiNTdlMDAwIC0gICAgIDB4N2ZmZjZiNThiZmY3ICBjb20uYXBwbGUu
U3BlZWNoUmVjb2duaXRpb25Db3JlICg0LjAuMTMgLSA0LjAuMTMpIDxBQzAyNkZCOS03OEY4LTMx
RjktQkI4MC02MTlENTM3OERCNzA+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9T
cGVlY2hSZWNvZ25pdGlvbkNvcmUuZnJhbWV3b3JrL1ZlcnNpb25zL0EvU3BlZWNoUmVjb2duaXRp
b25Db3JlCiAgICAweDdmZmY2YmEyNDAwMCAtICAgICAweDdmZmY2YmE0YmZmNyAgY29tLmFwcGxl
LlN0cmVhbWluZ1ppcCAoMS4wIC0gMSkgPEYwNkY0Q0RDLTEzOEMtMzk5MS1BOTg3LTdDNzMzMkJF
NDUwOD4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1N0cmVhbWluZ1ppcC5mcmFt
ZXdvcmsvVmVyc2lvbnMvQS9TdHJlYW1pbmdaaXAKICAgIDB4N2ZmZjZjMTFkMDAwIC0gICAgIDB4
N2ZmZjZjMWExZmU3ICBjb20uYXBwbGUuU3ltYm9saWNhdGlvbiAoOS4wIC0gNjMwNzkuMSkgPDMx
MURGNDEzLTA1NzctMzE5NC1CNzgyLTkyOThEODE4REU1OT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZh
dGVGcmFtZXdvcmtzL1N5bWJvbGljYXRpb24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvU3ltYm9saWNh
dGlvbgogICAgMHg3ZmZmNmM0NjMwMDAgLSAgICAgMHg3ZmZmNmM0OGZmZmYgIGNvbS5hcHBsZS5m
cmFtZXdvcmsuU3lzdGVtQWRtaW5pc3RyYXRpb24gKDEuMCAtIDEuMCkgPDZBRTAzREU4LUU1QzEt
MzhFNS1CNzg4LTBBNzYzQ0FBQ0RDMj4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtz
L1N5c3RlbUFkbWluaXN0cmF0aW9uLmZyYW1ld29yay9WZXJzaW9ucy9BL1N5c3RlbUFkbWluaXN0
cmF0aW9uCiAgICAweDdmZmY2YzY5MjAwMCAtICAgICAweDdmZmY2YzY5OWZmMyAgY29tLmFwcGxl
LlRDQyAoMS4wIC0gMSkgPEM4MDdEM0YwLUZFMjAtM0ZDMC04RDYxLTMwNjQ3N0FCRUJDND4gL1N5
c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1RDQy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9U
Q0MKICAgIDB4N2ZmZjZjOGE2MDAwIC0gICAgIDB4N2ZmZjZjOTYzZmY3ICBjb20uYXBwbGUuVGV4
dHVyZUlPICgzLjcgLSAzLjcpIDxDOThCRkFDQS03ODA3LTNEQ0EtOTQ1RC01OEVCQTJCNzIzQzg+
IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9UZXh0dXJlSU8uZnJhbWV3b3JrL1Zl
cnNpb25zL0EvVGV4dHVyZUlPCiAgICAweDdmZmY2Y2EwNzAwMCAtICAgICAweDdmZmY2Y2EwOGZm
ZiAgY29tLmFwcGxlLlRydXN0RXZhbHVhdGlvbkFnZW50ICgyLjAgLSAzMSkgPDM5RjUzM0IyLTIx
MUUtMzYzNS1BRjQ3LTIzRjI3NzQ5RkY0QT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdv
cmtzL1RydXN0RXZhbHVhdGlvbkFnZW50LmZyYW1ld29yay9WZXJzaW9ucy9BL1RydXN0RXZhbHVh
dGlvbkFnZW50CiAgICAweDdmZmY2Y2EwZTAwMCAtICAgICAweDdmZmY2Y2JiZGZmYiAgY29tLmFw
cGxlLlVJRm91bmRhdGlvbiAoMS4wIC0gNTQ2LjEpIDxCMEEwMzBBMy1GNkRFLTNEQjQtODI4OC1F
RTcxN0Y5QkFERkY+IC9TeXN0ZW0vTGlicmFyeS9Qcml2YXRlRnJhbWV3b3Jrcy9VSUZvdW5kYXRp
b24uZnJhbWV3b3JrL1ZlcnNpb25zL0EvVUlGb3VuZGF0aW9uCiAgICAweDdmZmY2ZDg4NjAwMCAt
ICAgICAweDdmZmY2ZDk1NWZmNyAgY29tLmFwcGxlLlZpZXdCcmlkZ2UgKDM0My4yIC0gMzQzLjIp
IDw3NTU4NDg0Ny04OTY5LTMyMzMtOUFBMi03RkU4NEVGNEZGMTg+IC9TeXN0ZW0vTGlicmFyeS9Q
cml2YXRlRnJhbWV3b3Jrcy9WaWV3QnJpZGdlLmZyYW1ld29yay9WZXJzaW9ucy9BL1ZpZXdCcmlk
Z2UKICAgIDB4N2ZmZjZkYTM0MDAwIC0gICAgIDB4N2ZmZjZkYTQ3ZmY3ICBjb20uYXBwbGUud2Vi
Y29udGVudGZpbHRlci5mcmFtZXdvcmsgKDUuMSAtIDUuMSkgPERGRkU5NERBLTJGNzktM0IzQi1B
REFCLTFDOUE3QTQ4Q0ZBMT4gL1N5c3RlbS9MaWJyYXJ5L1ByaXZhdGVGcmFtZXdvcmtzL1dlYkNv
bnRlbnRBbmFseXNpcy5mcmFtZXdvcmsvVmVyc2lvbnMvQS9XZWJDb250ZW50QW5hbHlzaXMKICAg
IDB4N2ZmZjZlMzA0MDAwIC0gICAgIDB4N2ZmZjZlMzA2ZmZiICBjb20uYXBwbGUubG9naW5zdXBw
b3J0ICgxLjAgLSAxKSA8NUUyQzRBQTctMDY2RC0zRkRCLUIwRTEtNENEQUYyODczOTJDPiAvU3lz
dGVtL0xpYnJhcnkvUHJpdmF0ZUZyYW1ld29ya3MvbG9naW4uZnJhbWV3b3JrL1ZlcnNpb25zL0Ev
RnJhbWV3b3Jrcy9sb2dpbnN1cHBvcnQuZnJhbWV3b3JrL1ZlcnNpb25zL0EvbG9naW5zdXBwb3J0
CiAgICAweDdmZmY2ZTQ2YTAwMCAtICAgICAweDdmZmY2ZTQ5ZGZmZiAgbGliY2xvc3VyZWQuZHls
aWIgKDUxOS4yLjIpIDw0ODA1MTIxNi01NjQ3LTM2NDMtQjk3OS1CNzdEMEZEMjAwMTE+IC91c3Iv
bGliL2Nsb3N1cmUvbGliY2xvc3VyZWQuZHlsaWIKICAgIDB4N2ZmZjZlNTNkMDAwIC0gICAgIDB4
N2ZmZjZlNTc2ZmY3ICBsaWJDUkZTdWl0ZS5keWxpYiAoNDEpIDxBQjJEQTc0NS1GMjJDLTMwQ0Yt
ODFENC0zNURENzE2NDYzQjg+IC91c3IvbGliL2xpYkNSRlN1aXRlLmR5bGliCiAgICAweDdmZmY2
ZTU3NzAwMCAtICAgICAweDdmZmY2ZTU4MmZmZiAgbGliQ2hpbmVzZVRva2VuaXplci5keWxpYiAo
MjgpIDxEMzBBN0RCNi0wNThGLTMyODYtOTU4My02MEM5RUVCNzdBNkU+IC91c3IvbGliL2xpYkNo
aW5lc2VUb2tlbml6ZXIuZHlsaWIKICAgIDB4N2ZmZjZlNTgzMDAwIC0gICAgIDB4N2ZmZjZlNjEw
ZmY3ICBsaWJDb3JlU3RvcmFnZS5keWxpYiAoNTQ2KSA8QjQ5NUQ4N0ItRkUyMS0zQzE0LTkwMTct
RjAyRDlDQTIyNkQ1PiAvdXNyL2xpYi9saWJDb3JlU3RvcmFnZS5keWxpYgogICAgMHg3ZmZmNmU2
MTQwMDAgLSAgICAgMHg3ZmZmNmU2MTVmZjMgIGxpYkRpYWdub3N0aWNNZXNzYWdlc0NsaWVudC5k
eWxpYiAoMTA0KSA8OTcxMkU5ODAtNzZFRS0zQTg5LUFFQTYtREY0QkFGNUMwNTc0PiAvdXNyL2xp
Yi9saWJEaWFnbm9zdGljTWVzc2FnZXNDbGllbnQuZHlsaWIKICAgIDB4N2ZmZjZlNjRjMDAwIC0g
ICAgIDB4N2ZmZjZlODE2ZmYzICBsaWJGb3NsX2R5bmFtaWMuZHlsaWIgKDE3LjcpIDxBMzQyMzU1
MS1BQjkwLTM3MzQtOTZBNi1DM0ZFODU4RjY3Mjc+IC91c3IvbGliL2xpYkZvc2xfZHluYW1pYy5k
eWxpYgogICAgMHg3ZmZmNmU4MzYwMDAgLSAgICAgMHg3ZmZmNmU4M2RmZmYgIGxpYk1hdGNoLjEu
ZHlsaWIgKDMxKSA8NzRBQjQ4MTUtMTFEMS0zOTMwLUE1NTktQkQ2NTUwQ0U1ODY1PiAvdXNyL2xp
Yi9saWJNYXRjaC4xLmR5bGliCiAgICAweDdmZmY2ZTg0ZTAwMCAtICAgICAweDdmZmY2ZTg0ZWZm
ZiAgbGliT3BlblNjcmlwdGluZ1V0aWwuZHlsaWIgKDE3NCkgPDIwM0QyQzM5LTYxQkItMzcxMy1B
NTAyLTJEMTdCMDRBNDJBQz4gL3Vzci9saWIvbGliT3BlblNjcmlwdGluZ1V0aWwuZHlsaWIKICAg
IDB4N2ZmZjZlOTc3MDAwIC0gICAgIDB4N2ZmZjZlOTdiZmZiICBsaWJTY3JlZW5SZWFkZXIuZHls
aWIgKDU2Mi4xMykgPDIxNjM4RUNDLTg3QkYtM0NDNS1CMkQ4LTZGNzg4M0Y1RkRDQT4gL3Vzci9s
aWIvbGliU2NyZWVuUmVhZGVyLmR5bGliCiAgICAweDdmZmY2ZTk3YzAwMCAtICAgICAweDdmZmY2
ZTk3ZGZmMyAgbGliU3lzdGVtLkIuZHlsaWIgKDEyNTIpIDw1RURFRUE4NS0wMzg3LTMxRUUtOUQ5
Qi1EQTFCNzVFN0FFRjM+IC91c3IvbGliL2xpYlN5c3RlbS5CLmR5bGliCiAgICAweDdmZmY2ZWEx
MDAwMCAtICAgICAweDdmZmY2ZWExMGZmZiAgbGliYXBwbGVfY3J5cHRvLmR5bGliICgxMDkuMzAu
OCkgPEUwMTYyMTk4LUM5N0YtMzI4Ni05RkY3LTI1NEQyM0Y2RkQwND4gL3Vzci9saWIvbGliYXBw
bGVfY3J5cHRvLmR5bGliCiAgICAweDdmZmY2ZWExMTAwMCAtICAgICAweDdmZmY2ZWEyN2ZmNyAg
bGliYXBwbGVfbmdodHRwMi5keWxpYiAoMS4yNCkgPDAxNDAyQkM0LTQ4MjItMzY3Ni05QzgwLTUw
RDgzRjgxNjQyND4gL3Vzci9saWIvbGliYXBwbGVfbmdodHRwMi5keWxpYgogICAgMHg3ZmZmNmVh
MjgwMDAgLSAgICAgMHg3ZmZmNmVhNTJmZjMgIGxpYmFyY2hpdmUuMi5keWxpYiAoNTQpIDw4RkMy
OEREOC1FMzE1LTNDM0UtOTVGRS1EMUQyQ0JFNDk4ODg+IC91c3IvbGliL2xpYmFyY2hpdmUuMi5k
eWxpYgogICAgMHg3ZmZmNmVhNTMwMDAgLSAgICAgMHg3ZmZmNmViNTZmZTcgIGxpYmF0ZS5keWxp
YiAoMS4xMy4xKSA8REFCRUExQjEtODA2Qy0zNEM5LThBRkYtREVCNkFCMjgyOUUzPiAvdXNyL2xp
Yi9saWJhdGUuZHlsaWIKICAgIDB4N2ZmZjZlYjVhMDAwIC0gICAgIDB4N2ZmZjZlYjVhZmYzICBs
aWJhdXRvLmR5bGliICgxODcpIDxBMDVDNzkwMC1GOEM3LTNFNzUtOEQzRi05MDlCNDBDMTk3MTc+
IC91c3IvbGliL2xpYmF1dG8uZHlsaWIKICAgIDB4N2ZmZjZlYjViMDAwIC0gICAgIDB4N2ZmZjZl
YzEyZmY3ICBsaWJib3Jpbmdzc2wuZHlsaWIgKDEwOS4zMC44KSA8RTYyRTNFODMtQkE4QS0zQ0NF
LThFNzEtODRGQjE4NEZCQkI1PiAvdXNyL2xpYi9saWJib3Jpbmdzc2wuZHlsaWIKICAgIDB4N2Zm
ZjZlYzEzMDAwIC0gICAgIDB4N2ZmZjZlYzIzZmYzICBsaWJic20uMC5keWxpYiAoMzkpIDw3NzBC
MzQxRi0zQkI3LTMxMjMtQjUzQy1GMkQ1ODg2OEE5NjM+IC91c3IvbGliL2xpYmJzbS4wLmR5bGli
CiAgICAweDdmZmY2ZWMyNDAwMCAtICAgICAweDdmZmY2ZWMzMWZmYiAgbGliYnoyLjEuMC5keWxp
YiAoMzgpIDwwQTUwODZCQi00NzI0LTNDMTQtOTc5RC01QUQ0RjI2QjVCNDU+IC91c3IvbGliL2xp
YmJ6Mi4xLjAuZHlsaWIKICAgIDB4N2ZmZjZlYzMyMDAwIC0gICAgIDB4N2ZmZjZlYzg4ZmZmICBs
aWJjKysuMS5keWxpYiAoNDAwLjkpIDxGQ0Y1RTFGNi0yQjA0LTM1NDUtODAwNC1GM0FCMzJGRUQx
NzI+IC91c3IvbGliL2xpYmMrKy4xLmR5bGliCiAgICAweDdmZmY2ZWM4OTAwMCAtICAgICAweDdm
ZmY2ZWNhZGZmNyAgbGliYysrYWJpLmR5bGliICg0MDAuNykgPDIxNzY1NkQ1LUJDNDAtMzdGRi1C
MzIyLTkxQ0IyQUFENEYzND4gL3Vzci9saWIvbGliYysrYWJpLmR5bGliCiAgICAweDdmZmY2ZWNh
ZjAwMCAtICAgICAweDdmZmY2ZWNiZmZmZiAgbGliY21waC5keWxpYiAoNikgPEE1NTA5RUU4LTdF
MDAtMzIyNC04ODE0LTAxNUIwNzdBM0NGNT4gL3Vzci9saWIvbGliY21waC5keWxpYgogICAgMHg3
ZmZmNmVjYzAwMDAgLSAgICAgMHg3ZmZmNmVjZDZmZmIgIGxpYmNvbXByZXNzaW9uLmR5bGliICg0
NykgPEExRkI2RDI0LTlCNzEtM0RERC04QjEyLUZBQkQwOENBM0Y0OT4gL3Vzci9saWIvbGliY29t
cHJlc3Npb24uZHlsaWIKICAgIDB4N2ZmZjZlZjgzMDAwIC0gICAgIDB4N2ZmZjZlZjliZmY3ICBs
aWJjb3JldGxzLmR5bGliICgxNTUpIDxERkUyNDU0Ri0yRkUzLTNCMkItQTIyQi00MjI5NDdDMzRD
Njk+IC91c3IvbGliL2xpYmNvcmV0bHMuZHlsaWIKICAgIDB4N2ZmZjZlZjljMDAwIC0gICAgIDB4
N2ZmZjZlZjlkZmZiICBsaWJjb3JldGxzX2NmaGVscGVycy5keWxpYiAoMTU1KSA8RDNGNEI4ODIt
NDBDMS0zQ0Q0LTkyN0ItMEUwRUQ2MDMxRDBCPiAvdXNyL2xpYi9saWJjb3JldGxzX2NmaGVscGVy
cy5keWxpYgogICAgMHg3ZmZmNmYxMzYwMDAgLSAgICAgMHg3ZmZmNmYyYzZmZmYgIGxpYmNyeXB0
by4zNS5keWxpYiAoMjIpIDwwNjdDRkMyMS0yNDlELTM5MkQtQURFMS03ODUxMDBCRjBGODM+IC91
c3IvbGliL2xpYmNyeXB0by4zNS5keWxpYgogICAgMHg3ZmZmNmY0NjEwMDAgLSAgICAgMHg3ZmZm
NmY0NmNmZjcgIGxpYmNzZmRlLmR5bGliICg1NDYpIDxCNkY2MzQwQS1GODc0LTM4QkQtQTdCQi1G
RkFERUJBNTQ3ODk+IC91c3IvbGliL2xpYmNzZmRlLmR5bGliCiAgICAweDdmZmY2ZjQ2ZDAwMCAt
ICAgICAweDdmZmY2ZjRjM2ZmMyAgbGliY3Vwcy4yLmR5bGliICg0NjIuMSkgPEI3ODQ0OEEwLTlD
OTctM0Q0QS04MjNFLUVCRTM3QjJCN0NBNj4gL3Vzci9saWIvbGliY3Vwcy4yLmR5bGliCiAgICAw
eDdmZmY2ZjRlZTAwMCAtICAgICAweDdmZmY2ZjU0MmZmYiAgbGliY3VybC40LmR5bGliICgxMDUu
MzAuMikgPERCNzMyNkIwLURFMzgtMzkyRC1BQUZBLUU4MUJFMEVERTk5RT4gL3Vzci9saWIvbGli
Y3VybC40LmR5bGliCiAgICAweDdmZmY2ZjU0NTAwMCAtICAgICAweDdmZmY2ZjU0Y2ZmMyAgbGli
ZHNjc3ltLmR5bGliICgxODMuMSkgPDFCOTA0MEYzLUI5ODgtMzVEQi04RkZFLTREMkFFNkVFMUEy
RD4gL3Vzci9saWIvbGliZHNjc3ltLmR5bGliCiAgICAweDdmZmY2ZjYwMTAwMCAtICAgICAweDdm
ZmY2ZjYwMWZmZiAgbGliZW5lcmd5dHJhY2UuZHlsaWIgKDE2KSA8QTkyQUI4QjgtQjk4Ni0zQ0U2
LTk4MEQtRDU1MDkwRkVGMzg3PiAvdXNyL2xpYi9saWJlbmVyZ3l0cmFjZS5keWxpYgogICAgMHg3
ZmZmNmY2MzgwMDAgLSAgICAgMHg3ZmZmNmY2M2RmZjMgIGxpYmhlaW1kYWwtYXNuMS5keWxpYiAo
NTIwLjMwLjEpIDwxNERDMTQ1MS02RTIyLTNBNDgtODBDQi01RDMzREMwRjhDM0I+IC91c3IvbGli
L2xpYmhlaW1kYWwtYXNuMS5keWxpYgogICAgMHg3ZmZmNmY2NjkwMDAgLSAgICAgMHg3ZmZmNmY3
NWFmZjcgIGxpYmljb252LjIuZHlsaWIgKDUxKSA8MDc3Mjk5N0YtNDEwOS0zOEExLTkxRUQtMEYz
RjE2QUU5OUU1PiAvdXNyL2xpYi9saWJpY29udi4yLmR5bGliCiAgICAweDdmZmY2Zjc1YjAwMCAt
ICAgICAweDdmZmY2Zjk4MmZmYiAgbGliaWN1Y29yZS5BLmR5bGliICg1OTE1Mi4wLjEpIDxBMkE0
NkQwRC0yODMxLTMyMTUtOTI2OC04RTU2Rjk4QThFNEI+IC91c3IvbGliL2xpYmljdWNvcmUuQS5k
eWxpYgogICAgMHg3ZmZmNmY5Y2YwMDAgLSAgICAgMHg3ZmZmNmY5ZDBmZmYgIGxpYmxhbmdpZC5k
eWxpYiAoMTI4KSA8MzlDMzkzOTMtMEQwNS0zMDFELTkzQjItRjIyNEZDNDk0OUFBPiAvdXNyL2xp
Yi9saWJsYW5naWQuZHlsaWIKICAgIDB4N2ZmZjZmOWQxMDAwIC0gICAgIDB4N2ZmZjZmOWVhZmZi
ICBsaWJsem1hLjUuZHlsaWIgKDEwKSA8M0Q0MTlBNTAtOTYxRi0zN0QyLThBMDEtM0RDN0FCN0I4
RDE4PiAvdXNyL2xpYi9saWJsem1hLjUuZHlsaWIKICAgIDB4N2ZmZjZmOWViMDAwIC0gICAgIDB4
N2ZmZjZmYTAxZmY3ICBsaWJtYXJpc2EuZHlsaWIgKDkpIDxENkQyRDU1RC0xRDJFLTM0NDItQjE1
Mi1CMTg4MDNDMEFCQjQ+IC91c3IvbGliL2xpYm1hcmlzYS5keWxpYgogICAgMHg3ZmZmNmZhYjIw
MDAgLSAgICAgMHg3ZmZmNmZjZGFmZjcgIGxpYm1lY2FicmEuZHlsaWIgKDc3OS43LjYpIDw4OUM2
M0U4NC0wNjdFLTM5REUtQTI4Ri1BMDAyMzVENjIwNjc+IC91c3IvbGliL2xpYm1lY2FicmEuZHls
aWIKICAgIDB4N2ZmZjZmZWIyMDAwIC0gICAgIDB4N2ZmZjZmZjg5ZmZiICBsaWJuZXR3b3JrLmR5
bGliICgxMjI5LjMwLjExKSA8Qzc3QkYwMzAtOTJGMi0zNTQ2LUExODMtREE5QTkxRTg3NTZGPiAv
dXNyL2xpYi9saWJuZXR3b3JrLmR5bGliCiAgICAweDdmZmY2ZmY4YTAwMCAtICAgICAweDdmZmY2
ZmY5NmZmMyAgbGlibmV0d29ya2V4dGVuc2lvbi5keWxpYiAoNzY3LjMwLjcpIDxGMzI1QjMzNS1E
QzVGLTMzMzUtQUE1NC1ERTVCNzdCRkUzNjk+IC91c3IvbGliL2xpYm5ldHdvcmtleHRlbnNpb24u
ZHlsaWIKICAgIDB4N2ZmZjZmZmZmMDAwIC0gICAgIDB4N2ZmZjcwM2YwM2I3ICBsaWJvYmpjLkEu
ZHlsaWIgKDcyMykgPDM3QTdENzdFLTk1MkMtM0Y1RC05NzBCLTNDREUzNDlCMjMyMj4gL3Vzci9s
aWIvbGlib2JqYy5BLmR5bGliCiAgICAweDdmZmY3MDNmMTAwMCAtICAgICAweDdmZmY3MDNmMmZm
NyAgbGlib2RmZGUuZHlsaWIgKDI0KSA8MUJCQzUxOUUtRUY4OS0zOEYzLUIyMjYtNzBGMDg2Njcw
RDBGPiAvdXNyL2xpYi9saWJvZGZkZS5keWxpYgogICAgMHg3ZmZmNzA0MDMwMDAgLSAgICAgMHg3
ZmZmNzA0MDdmZmYgIGxpYnBhbS4yLmR5bGliICgyMikgPDdCNEQyQ0UyLTE0MzgtMzg3QS05ODAy
LTVDRUVGQkYyNkY4Nj4gL3Vzci9saWIvbGlicGFtLjIuZHlsaWIKICAgIDB4N2ZmZjcwNDBhMDAw
IC0gICAgIDB4N2ZmZjcwNDNlZmZmICBsaWJwY2FwLkEuZHlsaWIgKDc5LjIwLjEpIDxGQTEzOTE4
Qi1BMjQ3LTMxODEtQjI1Ni05Qjg1MkM3QkEzMTY+IC91c3IvbGliL2xpYnBjYXAuQS5keWxpYgog
ICAgMHg3ZmZmNzA0YmQwMDAgLSAgICAgMHg3ZmZmNzA0ZDlmZmIgIGxpYnJlc29sdi45LmR5bGli
ICg2NSkgPEU4RjM0MTVCLTQ0NzItMzIwMi04OTAxLTQxRkQ4Nzk4MURCMj4gL3Vzci9saWIvbGli
cmVzb2x2LjkuZHlsaWIKICAgIDB4N2ZmZjcwNGRiMDAwIC0gICAgIDB4N2ZmZjcwNTEzZmZiICBs
aWJzYW5kYm94LjEuZHlsaWIgKDc2NS4zMC40KSA8OTg1OUM1MzAtNUZGOC0zMkIzLTg2MTAtNjMw
MzdCMDY5NDhBPiAvdXNyL2xpYi9saWJzYW5kYm94LjEuZHlsaWIKICAgIDB4N2ZmZjcwNTE0MDAw
IC0gICAgIDB4N2ZmZjcwNTI2ZmZmICBsaWJzYXNsMi4yLmR5bGliICgyMTEpIDxEOUUyODFBMi1E
N0JBLTMyQ0QtOEI5Ni01NDk3MkIxRDlFNjY+IC91c3IvbGliL2xpYnNhc2wyLjIuZHlsaWIKICAg
IDB4N2ZmZjcwNTI3MDAwIC0gICAgIDB4N2ZmZjcwNTI4ZmY3ICBsaWJzcGluZHVtcC5keWxpYiAo
MjQ4KSA8MTJFOEI4QkEtMDcyRi0zOUFFLThCQzktN0Q1ODQwREE4MEVCPiAvdXNyL2xpYi9saWJz
cGluZHVtcC5keWxpYgogICAgMHg3ZmZmNzA1MjkwMDAgLSAgICAgMHg3ZmZmNzA2YjZmZjcgIGxp
YnNxbGl0ZTMuZHlsaWIgKDI3NC41KSA8Qzk2RUREMzMtQjY0OS0zQjNBLTk1QjMtNEJGRTMyQjg0
MTgxPiAvdXNyL2xpYi9saWJzcWxpdGUzLmR5bGliCiAgICAweDdmZmY3MDcxMjAwMCAtICAgICAw
eDdmZmY3MDc2NWZmYiAgbGlic3NsLjM1LmR5bGliICgyMikgPDRENzdCNTAyLUUwNjUtMzc5NC05
MEU3LTM5RTgzRjk2ODNGNj4gL3Vzci9saWIvbGlic3NsLjM1LmR5bGliCiAgICAweDdmZmY3MDgw
ZDAwMCAtICAgICAweDdmZmY3MDgxZGZmZiAgbGlic3lzdGVtc3RhdHMuZHlsaWIgKDQwMy4zMS4x
KSA8RkQ4OUE3MjctMTdFRS0zNkRBLTk4NDAtQjY3NUM0NzA0MzhEPiAvdXNyL2xpYi9saWJzeXN0
ZW1zdGF0cy5keWxpYgogICAgMHg3ZmZmNzA4ODcwMDAgLSAgICAgMHg3ZmZmNzA4YzBmZmYgIGxp
YnVzcnRjcC5keWxpYiAoMTIyOS4zMC4xMSkgPDUzN0YxNEQwLTg0REYtMzQ5Ri04RUEwLTUyQkI3
QTI0MUU2MD4gL3Vzci9saWIvbGlidXNydGNwLmR5bGliCiAgICAweDdmZmY3MDhjMTAwMCAtICAg
ICAweDdmZmY3MDhjNGZmYiAgbGlidXRpbC5keWxpYiAoNTEuMjAuMSkgPDIxNkQxOEU1LTBCQUYt
M0VBRi1BMzhFLUY2QUMzN0NCQUJEOT4gL3Vzci9saWIvbGlidXRpbC5keWxpYgogICAgMHg3ZmZm
NzA4YzUwMDAgLSAgICAgMHg3ZmZmNzA4ZDJmZmYgIGxpYnhhci4xLmR5bGliICg0MDApIDwwMzE2
MTI4RC0zQjQ3LTMwNTItOTk1RC05N0I0RkU1NDkxREM+IC91c3IvbGliL2xpYnhhci4xLmR5bGli
CiAgICAweDdmZmY3MDhkNjAwMCAtICAgICAweDdmZmY3MDliZGZmZiAgbGlieG1sMi4yLmR5bGli
ICgzMS43KSA8NDk1NDQ1OTYtQkNGOC0zNzY1LThEQzUtREIxQTlBOTBFRjkyPiAvdXNyL2xpYi9s
aWJ4bWwyLjIuZHlsaWIKICAgIDB4N2ZmZjcwOWJlMDAwIC0gICAgIDB4N2ZmZjcwOWU2ZmZmICBs
aWJ4c2x0LjEuZHlsaWIgKDE1LjEwKSA8NjY2ODJBRjYtQzJENS0zNzRDLTkwMUYtMjVBM0U3Mjgx
NERDPiAvdXNyL2xpYi9saWJ4c2x0LjEuZHlsaWIKICAgIDB4N2ZmZjcwOWU3MDAwIC0gICAgIDB4
N2ZmZjcwOWY5ZmZiICBsaWJ6LjEuZHlsaWIgKDcwKSA8NDhDNjdDRkMtOTQwRC0zODU3LThEQUQt
ODU3Nzc0NjA1MzUyPiAvdXNyL2xpYi9saWJ6LjEuZHlsaWIKICAgIDB4N2ZmZjcwYTk3MDAwIC0g
ICAgIDB4N2ZmZjcwYTliZmY3ICBsaWJjYWNoZS5keWxpYiAoODApIDwzNTRGM0I3RC00MDRFLTMz
OTgtOUVCRi02NUNBMkNFNjUyMTE+IC91c3IvbGliL3N5c3RlbS9saWJjYWNoZS5keWxpYgogICAg
MHg3ZmZmNzBhOWMwMDAgLSAgICAgMHg3ZmZmNzBhYTZmZjMgIGxpYmNvbW1vbkNyeXB0by5keWxp
YiAoNjAxMTguMzAuMikgPDdGNUQ3NTg5LTJERjktM0I1Qy04OTg0LUVDNkZFQjY4RUNEOD4gL3Vz
ci9saWIvc3lzdGVtL2xpYmNvbW1vbkNyeXB0by5keWxpYgogICAgMHg3ZmZmNzBhYTcwMDAgLSAg
ICAgMHg3ZmZmNzBhYWVmZmYgIGxpYmNvbXBpbGVyX3J0LmR5bGliICg2MikgPDQ0ODdDRkJBLUE1
RDctMzI4Mi05RTZCLTk0Q0FEN0JFNTA3RT4gL3Vzci9saWIvc3lzdGVtL2xpYmNvbXBpbGVyX3J0
LmR5bGliCiAgICAweDdmZmY3MGFhZjAwMCAtICAgICAweDdmZmY3MGFiN2ZmYiAgbGliY29weWZp
bGUuZHlsaWIgKDE0Ni4zMC4yKSA8MkM3QzY3RDctNTYyQi0zRkZBLTk3M0QtQkFDRjRDMTBFMUVD
PiAvdXNyL2xpYi9zeXN0ZW0vbGliY29weWZpbGUuZHlsaWIKICAgIDB4N2ZmZjcwYWI4MDAwIC0g
ICAgIDB4N2ZmZjcwYjNkZmZmICBsaWJjb3JlY3J5cHRvLmR5bGliICg1NjIuMzAuMTApIDxDRUE5
RERCQy0zODNGLTMzMkEtQTE4Ny0yMkI3N0NBNTU2M0E+IC91c3IvbGliL3N5c3RlbS9saWJjb3Jl
Y3J5cHRvLmR5bGliCiAgICAweDdmZmY3MGJjNTAwMCAtICAgICAweDdmZmY3MGJmZWZmNyAgbGli
ZGlzcGF0Y2guZHlsaWIgKDkxMy4zMC40KSA8RTk4NTkwNDktQUEzRi0zNTZBLTlEQ0UtRUFDN0FF
QTc1Mjc5PiAvdXNyL2xpYi9zeXN0ZW0vbGliZGlzcGF0Y2guZHlsaWIKICAgIDB4N2ZmZjcwYmZm
MDAwIC0gICAgIDB4N2ZmZjcwYzFjZmY3ICBsaWJkeWxkLmR5bGliICg1MTkuMi4yKSA8RDEzQUM5
NDgtRkRBMS0zRkZELThBOUUtODgxMjFEMTFCMDFFPiAvdXNyL2xpYi9zeXN0ZW0vbGliZHlsZC5k
eWxpYgogICAgMHg3ZmZmNzBjMWQwMDAgLSAgICAgMHg3ZmZmNzBjMWRmZmIgIGxpYmtleW1nci5k
eWxpYiAoMjgpIDw2RDg0QTk2Ri1DNjVCLTM4RUMtQkRCNS0yMUZEMkM5N0U3QjI+IC91c3IvbGli
L3N5c3RlbS9saWJrZXltZ3IuZHlsaWIKICAgIDB4N2ZmZjcwYzFlMDAwIC0gICAgIDB4N2ZmZjcw
YzJhZmYzICBsaWJreGxkLmR5bGliICg0NTcwLjMxLjMpIDw0RTVFMzdFRi1CQzQwLTMwQkMtQUE2
NC1GMzA4OTkzRjMwQ0E+IC91c3IvbGliL3N5c3RlbS9saWJreGxkLmR5bGliCiAgICAweDdmZmY3
MGMyYjAwMCAtICAgICAweDdmZmY3MGMyYmZmNyAgbGlibGF1bmNoLmR5bGliICgxMjA1LjMwLjI5
KSA8RTY2RjU4RUQtQzE1RS0zREZCLUJDMjItQTg2MUUxMzkxOEM2PiAvdXNyL2xpYi9zeXN0ZW0v
bGlibGF1bmNoLmR5bGliCiAgICAweDdmZmY3MGMyYzAwMCAtICAgICAweDdmZmY3MGMzMGZmYiAg
bGlibWFjaG8uZHlsaWIgKDkwMC4wLjEpIDw3NTZGMjU1My0wN0I2LTNCNDItQUNFQS0yRjBGMUE1
RThEMEY+IC91c3IvbGliL3N5c3RlbS9saWJtYWNoby5keWxpYgogICAgMHg3ZmZmNzBjMzEwMDAg
LSAgICAgMHg3ZmZmNzBjMzNmZjMgIGxpYnF1YXJhbnRpbmUuZHlsaWIgKDg2KSA8NkFDODc3M0Yt
MzgxNy0zRDgyLTk5QzItMDFCQUJCOUMzQ0JCPiAvdXNyL2xpYi9zeXN0ZW0vbGlicXVhcmFudGlu
ZS5keWxpYgogICAgMHg3ZmZmNzBjMzQwMDAgLSAgICAgMHg3ZmZmNzBjMzVmZjMgIGxpYnJlbW92
ZWZpbGUuZHlsaWIgKDQ1KSA8OTEyRkEyMTEtREQ4Qy0zQzkyLTg0MjQtMjFCODlGOEIxMEZEPiAv
dXNyL2xpYi9zeXN0ZW0vbGlicmVtb3ZlZmlsZS5keWxpYgogICAgMHg3ZmZmNzBjMzYwMDAgLSAg
ICAgMHg3ZmZmNzBjNGRmZmYgIGxpYnN5c3RlbV9hc2wuZHlsaWIgKDM1Ni4xLjEpIDw5NDk3Mjkx
My05REYwLTNDNzgtODQ3Qy00M0U1ODkxOUUzREE+IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1f
YXNsLmR5bGliCiAgICAweDdmZmY3MGM0ZTAwMCAtICAgICAweDdmZmY3MGM0ZWZmZiAgbGlic3lz
dGVtX2Jsb2Nrcy5keWxpYiAoNjcpIDxGMjQ5M0JCNS1CMUM2LTNDNEQtOUYxRi0xQjQwMkUwRjFE
Qjc+IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1fYmxvY2tzLmR5bGliCiAgICAweDdmZmY3MGM0
ZjAwMCAtICAgICAweDdmZmY3MGNkOGZmNyAgbGlic3lzdGVtX2MuZHlsaWIgKDEyNDQuMzAuMykg
PERCMDY4MkE1LTM3RkQtM0VGMi1CNjlDLTJBQkVBMzg4N0NFOD4gL3Vzci9saWIvc3lzdGVtL2xp
YnN5c3RlbV9jLmR5bGliCiAgICAweDdmZmY3MGNkOTAwMCAtICAgICAweDdmZmY3MGNkY2ZmYiAg
bGlic3lzdGVtX2NvbmZpZ3VyYXRpb24uZHlsaWIgKDk2My4zMC4xKSA8RUQxOENCODEtRUNBNS0z
NTM0LUE5RDMtRjBGMDRFRTQ2OEVBPiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX2NvbmZpZ3Vy
YXRpb24uZHlsaWIKICAgIDB4N2ZmZjcwY2RkMDAwIC0gICAgIDB4N2ZmZjcwY2UwZmZiICBsaWJz
eXN0ZW1fY29yZXNlcnZpY2VzLmR5bGliICg1MSkgPDIxQTQ4OEQwLTJEMDctMzQ0RS04NjMxLUND
OEIyQTI0NkYzNT4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9jb3Jlc2VydmljZXMuZHlsaWIK
ICAgIDB4N2ZmZjcwY2UxMDAwIC0gICAgIDB4N2ZmZjcwY2UyZmZmICBsaWJzeXN0ZW1fZGFyd2lu
LmR5bGliICgxMjQ0LjMwLjMpIDxBMzk1ODM4NS1GOTdDLTM2NkQtOEIzQS1BMzJCMkJGQkVBNUQ+
IC91c3IvbGliL3N5c3RlbS9saWJzeXN0ZW1fZGFyd2luLmR5bGliCiAgICAweDdmZmY3MGNlMzAw
MCAtICAgICAweDdmZmY3MGNlOWZmNyAgbGlic3lzdGVtX2Ruc3NkLmR5bGliICg4NzguMzAuNCkg
PDA5MDJENDc0LTY4RUItM0VGMi05QjcwLTU5QzdFNERBQzAwMT4gL3Vzci9saWIvc3lzdGVtL2xp
YnN5c3RlbV9kbnNzZC5keWxpYgogICAgMHg3ZmZmNzBjZWEwMDAgLSAgICAgMHg3ZmZmNzBkMzNm
ZjcgIGxpYnN5c3RlbV9pbmZvLmR5bGliICg1MTcuMzAuMSkgPEM1QTFDMzIwLTA0RDUtMzEyOC05
REM5LTJEQTZCREEyRDNFOT4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9pbmZvLmR5bGliCiAg
ICAweDdmZmY3MGQzNDAwMCAtICAgICAweDdmZmY3MGQ1OWZmNyAgbGlic3lzdGVtX2tlcm5lbC5k
eWxpYiAoNDU3MC4zMS4zKSA8RDJFODQyQUEtM0I4RC0zMUJGLTgyMzQtOEMxQkUxMUNGRTMyPiAv
dXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX2tlcm5lbC5keWxpYgogICAgMHg3ZmZmNzBkNWEwMDAg
LSAgICAgMHg3ZmZmNzBkYTVmY2IgIGxpYnN5c3RlbV9tLmR5bGliICgzMTQ2KSA8QUJCMUI4NUYt
OUZGRS0zMUI4LUFENEYtRTM5QTMwNzk0QTkzPiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX20u
ZHlsaWIKICAgIDB4N2ZmZjcwZGE2MDAwIC0gICAgIDB4N2ZmZjcwZGM1ZmZmICBsaWJzeXN0ZW1f
bWFsbG9jLmR5bGliICgxNDAuMS4xKSA8OUYwNzQ1RkYtQjkyRi0zMzBELTg4MTItQkI3NDAwMUQx
RDMzPiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX21hbGxvYy5keWxpYgogICAgMHg3ZmZmNzBk
YzYwMDAgLSAgICAgMHg3ZmZmNzBlNmFmZjMgIGxpYnN5c3RlbV9uZXR3b3JrLmR5bGliICgxMjI5
LjMwLjExKSA8MjFCQkVENzktRTA4Ni0zMTEzLUI5RkMtMjc1NkM4OERCQzhGPiAvdXNyL2xpYi9z
eXN0ZW0vbGlic3lzdGVtX25ldHdvcmsuZHlsaWIKICAgIDB4N2ZmZjcwZTZiMDAwIC0gICAgIDB4
N2ZmZjcwZTc1ZmZiICBsaWJzeXN0ZW1fbmV0d29ya2V4dGVuc2lvbi5keWxpYiAoNzY3LjMwLjcp
IDw4OThCNzA0Qy00REMxLTM3OEYtOTUyMC00OTYyM0MwMUU1Qzg+IC91c3IvbGliL3N5c3RlbS9s
aWJzeXN0ZW1fbmV0d29ya2V4dGVuc2lvbi5keWxpYgogICAgMHg3ZmZmNzBlNzYwMDAgLSAgICAg
MHg3ZmZmNzBlN2ZmZjMgIGxpYnN5c3RlbV9ub3RpZnkuZHlsaWIgKDE3MikgPDk4RUEzRDYyLTdD
ODYtMzBERS04MjYxLUQwMjBEMkYxRUZGMz4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9ub3Rp
ZnkuZHlsaWIKICAgIDB4N2ZmZjcwZTgwMDAwIC0gICAgIDB4N2ZmZjcwZTg3ZmY3ICBsaWJzeXN0
ZW1fcGxhdGZvcm0uZHlsaWIgKDE2MS4yMC4xKSA8QzA0OTI1MEYtOEMzNS0zMTRELTgxMEYtNEUy
OEFFQUVEOTgzPiAvdXNyL2xpYi9zeXN0ZW0vbGlic3lzdGVtX3BsYXRmb3JtLmR5bGliCiAgICAw
eDdmZmY3MGU4ODAwMCAtICAgICAweDdmZmY3MGU5M2ZmZiAgbGlic3lzdGVtX3B0aHJlYWQuZHls
aWIgKDMwMS4zMC4xKSA8QzdGRDhDMDktMjRENS0zQjMxLUIzMEItNjExODczMjVDODExPiAvdXNy
L2xpYi9zeXN0ZW0vbGlic3lzdGVtX3B0aHJlYWQuZHlsaWIKICAgIDB4N2ZmZjcwZTk0MDAwIC0g
ICAgIDB4N2ZmZjcwZTk3ZmYzICBsaWJzeXN0ZW1fc2FuZGJveC5keWxpYiAoNzY1LjMwLjQpIDxG
OTMwNkE5OS1DRTE2LTMwQTEtQjE0Ri1EM0U5MzIzNkI1NjM+IC91c3IvbGliL3N5c3RlbS9saWJz
eXN0ZW1fc2FuZGJveC5keWxpYgogICAgMHg3ZmZmNzBlOTgwMDAgLSAgICAgMHg3ZmZmNzBlOTlm
ZjMgIGxpYnN5c3RlbV9zZWNpbml0LmR5bGliICgzMCkgPEYwNkFEQjhGLTlFOTQtMzRBNy1CM0M5
LTJDMjJGREQxNEJBRD4gL3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9zZWNpbml0LmR5bGliCiAg
ICAweDdmZmY3MGU5YTAwMCAtICAgICAweDdmZmY3MGVhMWZmNyAgbGlic3lzdGVtX3N5bXB0b21z
LmR5bGliICg4MjAuMzAuNykgPEEzMTNGOTJBLTFFOTItMzk5NC1BODFFLTY0N0RFMTA1OUY1Mz4g
L3Vzci9saWIvc3lzdGVtL2xpYnN5c3RlbV9zeW1wdG9tcy5keWxpYgogICAgMHg3ZmZmNzBlYTIw
MDAgLSAgICAgMHg3ZmZmNzBlYjVmZjcgIGxpYnN5c3RlbV90cmFjZS5keWxpYiAoODI5LjMwLjE0
KSA8NjA0QjQ2RTgtNzM3OS0zMzRFLTgzOUEtQUNBMDYyRTA2NTZDPiAvdXNyL2xpYi9zeXN0ZW0v
bGlic3lzdGVtX3RyYWNlLmR5bGliCiAgICAweDdmZmY3MGViNzAwMCAtICAgICAweDdmZmY3MGVi
Y2ZmNyAgbGlidW53aW5kLmR5bGliICgzNS4zKSA8NkQ0RkNENDktRDJBOS0zMjMzLTk1QzctQTc2
MzVDRTI2NUYyPiAvdXNyL2xpYi9zeXN0ZW0vbGlidW53aW5kLmR5bGliCiAgICAweDdmZmY3MGVi
ZDAwMCAtICAgICAweDdmZmY3MGVlOWZmNyAgbGlieHBjLmR5bGliICgxMjA1LjMwLjI5KSA8MjNE
MzE0OTYtMEJEQy0zMDgxLTg3RjEtMjczM0Q1OTJDRjlFPiAvdXNyL2xpYi9zeXN0ZW0vbGlieHBj
LmR5bGliCgpFeHRlcm5hbCBNb2RpZmljYXRpb24gU3VtbWFyeToKICBDYWxscyBtYWRlIGJ5IG90
aGVyIHByb2Nlc3NlcyB0YXJnZXRpbmcgdGhpcyBwcm9jZXNzOgogICAgdGFza19mb3JfcGlkOiAx
NAogICAgdGhyZWFkX2NyZWF0ZTogMAogICAgdGhyZWFkX3NldF9zdGF0ZTogMAogIENhbGxzIG1h
ZGUgYnkgdGhpcyBwcm9jZXNzOgogICAgdGFza19mb3JfcGlkOiAwCiAgICB0aHJlYWRfY3JlYXRl
OiAwCiAgICB0aHJlYWRfc2V0X3N0YXRlOiAwCiAgQ2FsbHMgbWFkZSBieSBhbGwgcHJvY2Vzc2Vz
IG9uIHRoaXMgbWFjaGluZToKICAgIHRhc2tfZm9yX3BpZDogMTQyODc2MwogICAgdGhyZWFkX2Ny
ZWF0ZTogMAogICAgdGhyZWFkX3NldF9zdGF0ZTogMAoKVk0gUmVnaW9uIFN1bW1hcnk6ClJlYWRP
bmx5IHBvcnRpb24gb2YgTGlicmFyaWVzOiBUb3RhbD03NTQuNE0gcmVzaWRlbnQ9MEsoMCUpIHN3
YXBwZWRfb3V0X29yX3VuYWxsb2NhdGVkPTc1NC40TSgxMDAlKQpXcml0YWJsZSByZWdpb25zOiBU
b3RhbD04MS43RyB3cml0dGVuPTBLKDAlKSByZXNpZGVudD0wSygwJSkgc3dhcHBlZF9vdXQ9MEso
MCUpIHVuYWxsb2NhdGVkPTgxLjdHKDEwMCUpCiAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFZJUlRVQUwgICBSRUdJT04gClJFR0lPTiBUWVBFICAgICAgICAgICAgICAgICAgICAg
ICAgICBTSVpFICAgIENPVU5UIChub24tY29hbGVzY2VkKSAKPT09PT09PT09PT0gICAgICAgICAg
ICAgICAgICAgICAgID09PT09PT0gID09PT09PT0gCkFjY2VsZXJhdGUgZnJhbWV3b3JrICAgICAg
ICAgICAgICAgICAxMjhLICAgICAgICAyIApBY3Rpdml0eSBUcmFjaW5nICAgICAgICAgICAgICAg
ICAgICAgMjU2SyAgICAgICAgMiAKQ0cgaW1hZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDI2MEsgICAgICAgIDIgCkNvcmVBbmltYXRpb24gICAgICAgICAgICAgICAgICAgICAgIDIyMTJL
ICAgICAgICAzIApDb3JlU2VydmljZXMgICAgICAgICAgICAgICAgICAgICAgICAgMjcySyAgICAg
ICAgMiAKQ29yZVVJIGltYWdlIGRhdGEgICAgICAgICAgICAgICAgICAgIDM4NEsgICAgICAgIDQg
CkNvcmVVSSBpbWFnZSBmaWxlICAgICAgICAgICAgICAgICAgICAxODBLICAgICAgICA0IApEaXNw
YXRjaCBjb250aW51YXRpb25zICAgICAgICAgICAgICAxNi4wTSAgICAgICAgMiAKRm91bmRhdGlv
biAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNEsgICAgICAgIDIgCklPS2l0ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDc5NDBLICAgICAgICAyIApJbWFnZSBJTyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAxODI4SyAgICAgICAzMyAKSlMgSklUIGdlbmVyYXRlZCBjb2RlICAg
ICAgICAgICAgICAyNTYuME0gICAgICAgIDUgCkpTIEpJVCBnZW5lcmF0ZWQgY29kZSAocmVzZXJ2
ZWQpICAgNzY4LjBNICAgICAgICAyICAgICAgICAgcmVzZXJ2ZWQgVk0gYWRkcmVzcyBzcGFjZSAo
dW5hbGxvY2F0ZWQpCktlcm5lbCBBbGxvYyBPbmNlICAgICAgICAgICAgICAgICAgICAgIDhLICAg
ICAgICAyIApNQUxMT0MgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE3OS4zTSAgICAgICA1
NyAKTUFMTE9DIGd1YXJkIHBhZ2UgICAgICAgICAgICAgICAgICAgICA2NEsgICAgICAgMTQgCk1l
bW9yeSBUYWcgMjQyICAgICAgICAgICAgICAgICAgICAgICAgMTJLICAgICAgICAyIApNZW1vcnkg
VGFnIDI1MSAgICAgICAgICAgICAgICAgICAgICAgIDYwSyAgICAgICAgMyAKU1RBQ0sgR1VBUkQg
ICAgICAgICAgICAgICAgICAgICAgICAgNTYuMU0gICAgICAgMzEgClN0YWNrICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDIzLjJNICAgICAgIDMxIApWTV9BTExPQ0FURSAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDY0SyAgICAgICAgOSAKV2ViS2l0IE1hbGxvYyAgICAgICAgICAgICAg
ICAgICAgICAgMzIuOUcgICAgICAgNzAgCldlYktpdCBNYWxsb2MgKHJlc2VydmVkKSAgICAgICAg
ICAgIDc5LjdHICAgICAgICA0ICAgICAgICAgcmVzZXJ2ZWQgVk0gYWRkcmVzcyBzcGFjZSAodW5h
bGxvY2F0ZWQpCl9fREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwLjlNICAgICAg
MzA5IApfX0ZPTlRfREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgICA0SyAgICAgICAgMiAK
X19HTFNMQlVJTFRJTlMgICAgICAgICAgICAgICAgICAgICAgMjU4OEsgICAgICAgIDIgCl9fTElO
S0VESVQgICAgICAgICAgICAgICAgICAgICAgICAgNDMwLjFNICAgICAgIDE2IApfX1RFWFQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDMyNC4yTSAgICAgIDMwNSAKX19VTklDT0RFICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDU2MEsgICAgICAgIDIgCm1hcHBlZCBmaWxlICAgICAgICAg
ICAgICAgICAgICAgICAgMjc1LjRNICAgICAgIDgzIApzaGFyZWQgbWVtb3J5ICAgICAgICAgICAg
ICAgICAgICAgICAgNjQ4SyAgICAgICAxMiAKPT09PT09PT09PT0gICAgICAgICAgICAgICAgICAg
ICAgID09PT09PT0gID09PT09PT0gClRPVEFMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MTE0LjlHICAgICAgOTg4IApUT1RBTCwgbWludXMgcmVzZXJ2ZWQgVk0gc3BhY2UgICAgICAzNC40
RyAgICAgIDk4OCAKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330228</attachid>
            <date>2017-12-27 21:24:43 -0800</date>
            <delta_ts>2017-12-28 08:13:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180499-20171227212442.patch</filename>
            <type>text/plain</type>
            <size>32224</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTgzZDJlNWNkMzBhZTk5
OGU5MjE0OWViNjllNTZlOTUzMmU3OTNiNy4uNmE2ZWYwYzdmZGM1ZDUzYjdkM2UxMTAwMzk0MWY2
M2JlZTE1NWExNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE3LTEyLTI3ICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgQVNTRVJUSU9OIEZBSUxF
RDogbV93b3JrZXJHbG9iYWxTY29wZS0+aGFzT25lUmVmKCkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDQ5OQorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMzU4OTA2ODA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBwYXRjaCBhZGRzIHBlbmRpbmcgcHJvbWlzZSBxdWV1ZSB0byBTdWJ0bGVDcnlw
dG8gc3VjaCB0aGF0IGl0IG5vIGxvbmdlcgorICAgICAgICBwYXNzZXMgcHJvbWlzZXMgYXJvdW5k
IGRpZmZlcmVudCB0aHJlYWRzLCB3aGljaCBjb3VsZCBjYXVzZSBjcmFzaGVzIHdoZW4KKyAgICAg
ICAgcHJvbWlzZXMgYXJlIGRlc3Ryb3llZCBpbiBzZWNvbmRhcnkgdGhyZWFkcy4KKworICAgICAg
ICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogY3J5cHRvL1N1YnRsZUNy
eXB0by5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRQcm9taXNlKToKKyAgICAgICAgKFdlYkNv
cmU6OlN1YnRsZUNyeXB0bzo6ZW5jcnlwdCk6CisgICAgICAgIChXZWJDb3JlOjpTdWJ0bGVDcnlw
dG86OmRlY3J5cHQpOgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRvOjpzaWduKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6dmVyaWZ5KToKKyAgICAgICAgKFdlYkNvcmU6
OlN1YnRsZUNyeXB0bzo6ZGlnZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6
Z2VuZXJhdGVLZXkpOgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRvOjpkZXJpdmVLZXkp
OgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRvOjpkZXJpdmVCaXRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6aW1wb3J0S2V5KToKKyAgICAgICAgKFdlYkNvcmU6OlN1
YnRsZUNyeXB0bzo6ZXhwb3J0S2V5KToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6
d3JhcEtleSk6CisgICAgICAgIChXZWJDb3JlOjpTdWJ0bGVDcnlwdG86OnVud3JhcEtleSk6Cisg
ICAgICAgICogY3J5cHRvL1N1YnRsZUNyeXB0by5oOgorCiAyMDE3LTEyLTIxICBKaWV3ZW4gVGFu
ICA8amlld2VuX3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIENyZWRlbnRpYWwgTWFu
YWdlbWVudCBBUEkgZm9yIFdlYkF1dGhlbnRpY2F0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jcnlwdG8vU3VidGxlQ3J5cHRvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0
bGVDcnlwdG8uY3BwCmluZGV4IDM3YWI2NzI5NzUzYTNhOTE1YjdjZWNlMWZjMmYzZjE5MjlmMDVj
ZDYuLjU1ZGMyN2M5NDY1OGIxMjVkODBlNTFkMzFhZDlmMGFlYzA2MmEyNTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0bGVDcnlwdG8uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2NyeXB0by9TdWJ0bGVDcnlwdG8uY3BwCkBAIC01MDgsNiArNTA4LDEyIEBAIHN0YXRpYyBi
b29sIGlzU3VwcG9ydGVkRXhwb3J0S2V5KENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRlbnRp
ZmllcikKICAgICB9CiB9CiAKK3N0ZDo6b3B0aW9uYWw8UmVmPERlZmVycmVkUHJvbWlzZT4+IGdl
dFByb21pc2UoRGVmZXJyZWRQcm9taXNlKiBpbmRleCwgV2Vha1B0cjxTdWJ0bGVDcnlwdG8+IHN1
YnRsZUNyeXB0b1dlYWtQb2ludGVyKQoreworICAgIGlmIChzdWJ0bGVDcnlwdG9XZWFrUG9pbnRl
cikKKyAgICAgICAgcmV0dXJuIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyLT5tX3BlbmRpbmdQcm9t
aXNlcy50YWtlKGluZGV4KTsKKyAgICByZXR1cm4gc3RkOjpudWxsb3B0OworfQogCiAvLyBNQVJL
OiAtIEV4cG9zZWQgZnVuY3Rpb25zLgogCkBAIC01MzQsMTEgKzU0MCwxNiBAQCB2b2lkIFN1YnRs
ZUNyeXB0bzo6ZW5jcnlwdChKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlkZW50aWZp
ZXImJiBhbGdvcml0aAogCiAgICAgYXV0byBhbGdvcml0aG0gPSBDcnlwdG9BbGdvcml0aG1SZWdp
c3RyeTo6c2luZ2xldG9uKCkuY3JlYXRlKGtleS5hbGdvcml0aG1JZGVudGlmaWVyKCkpOwogCi0g
ICAgYXV0byBjYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBwcm9taXNlLmNvcHlSZWYoKV0o
Y29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBjaXBoZXJUZXh0KSBtdXRhYmxlIHsKLSAgICAgICAgZnVs
ZmlsbFByb21pc2VXaXRoQXJyYXlCdWZmZXIoV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBjaXBo
ZXJUZXh0LmRhdGEoKSwgY2lwaGVyVGV4dC5zaXplKCkpOworICAgIGF1dG8gaW5kZXggPSBwcm9t
aXNlLnB0cigpOworICAgIG1fcGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9t
aXNlKSk7CisgICAgYXV0byBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3Rv
cnkuY3JlYXRlV2Vha1B0cigqdGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3Vi
dGxlQ3J5cHRvV2Vha1BvaW50ZXJdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgY2lwaGVyVGV4dCkg
bXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBz
dWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhB
cnJheUJ1ZmZlcihXVEZNb3ZlKCpwcm9taXNlKSwgY2lwaGVyVGV4dC5kYXRhKCksIGNpcGhlclRl
eHQuc2l6ZSgpKTsKICAgICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVy
ZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7
Ci0gICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBl
Yyk7CisgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vh
a1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBw
cm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAg
ICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKCpwcm9taXNlKSwgZWMpOwogICAg
IH07CiAKICAgICBhbGdvcml0aG0tPmVuY3J5cHQoV1RGTW92ZShwYXJhbXMpLCBrZXksIFdURk1v
dmUoZGF0YSksIFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNrKSwg
KnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgbV93b3JrUXVldWUpOwpAQCAtNTY3LDExICs1Nzgs
MTYgQEAgdm9pZCBTdWJ0bGVDcnlwdG86OmRlY3J5cHQoSlNDOjpFeGVjU3RhdGUmIHN0YXRlLCBB
bGdvcml0aG1JZGVudGlmaWVyJiYgYWxnb3JpdGgKIAogICAgIGF1dG8gYWxnb3JpdGhtID0gQ3J5
cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNpbmdsZXRvbigpLmNyZWF0ZShrZXkuYWxnb3JpdGhtSWRl
bnRpZmllcigpKTsKIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gcHJv
bWlzZS5jb3B5UmVmKCldKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgcGxhaW5UZXh0KSBtdXRhYmxl
IHsKLSAgICAgICAgZnVsZmlsbFByb21pc2VXaXRoQXJyYXlCdWZmZXIoV1RGTW92ZShjYXB0dXJl
ZFByb21pc2UpLCBwbGFpblRleHQuZGF0YSgpLCBwbGFpblRleHQuc2l6ZSgpKTsKKyAgICBhdXRv
IGluZGV4ID0gcHJvbWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgs
IFdURk1vdmUocHJvbWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBt
X3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sg
PSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShjb25zdCBWZWN0b3I8dWludDhfdD4m
IHBsYWluVGV4dCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9t
aXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICBmdWxmaWxs
UHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihXVEZNb3ZlKCpwcm9taXNlKSwgcGxhaW5UZXh0LmRhdGEo
KSwgcGxhaW5UZXh0LnNpemUoKSk7CiAgICAgfTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNr
ID0gW2NhcHR1cmVkUHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMp
IG11dGFibGUgewotICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQ
cm9taXNlKSwgZWMpOworICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRs
ZUNyeXB0b1dlYWtQb2ludGVyXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAg
aWYgKGF1dG8gcHJvbWlzZSA9IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2lu
dGVyKSkKKyAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSks
IGVjKTsKICAgICB9OwogCiAgICAgYWxnb3JpdGhtLT5kZWNyeXB0KFdURk1vdmUocGFyYW1zKSwg
a2V5LCBXVEZNb3ZlKGRhdGEpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25D
YWxsYmFjayksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsKQEAgLTYw
MCwxMSArNjE2LDE2IEBAIHZvaWQgU3VidGxlQ3J5cHRvOjpzaWduKEpTQzo6RXhlY1N0YXRlJiBz
dGF0ZSwgQWxnb3JpdGhtSWRlbnRpZmllciYmIGFsZ29yaXRobUlkCiAKICAgICBhdXRvIGFsZ29y
aXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUoa2V5LmFs
Z29yaXRobUlkZW50aWZpZXIoKSk7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJv
bWlzZSA9IHByb21pc2UuY29weVJlZigpXShjb25zdCBWZWN0b3I8dWludDhfdD4mIHNpZ25hdHVy
ZSkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1v
dmUoY2FwdHVyZWRQcm9taXNlKSwgc2lnbmF0dXJlLmRhdGEoKSwgc2lnbmF0dXJlLnNpemUoKSk7
CisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAgbV9wZW5kaW5nUHJvbWlzZXMu
YWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRvIHN1YnRsZUNyeXB0b1dlYWtQ
b2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRyKCp0aGlzKTsKKyAgICBhdXRv
IGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oY29uc3QgVmVjdG9y
PHVpbnQ4X3Q+JiBzaWduYXR1cmUpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNl
ID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAg
ICAgZnVsZmlsbFByb21pc2VXaXRoQXJyYXlCdWZmZXIoV1RGTW92ZSgqcHJvbWlzZSksIHNpZ25h
dHVyZS5kYXRhKCksIHNpZ25hdHVyZS5zaXplKCkpOwogICAgIH07Ci0gICAgYXV0byBleGNlcHRp
b25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRp
b25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3Zl
KGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2lu
ZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7
CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlw
dG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUo
KnByb21pc2UpLCBlYyk7CiAgICAgfTsKIAogICAgIGFsZ29yaXRobS0+c2lnbihXVEZNb3ZlKHBh
cmFtcyksIGtleSwgV1RGTW92ZShkYXRhKSwgV1RGTW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhj
ZXB0aW9uQ2FsbGJhY2spLCAqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBtX3dvcmtRdWV1ZSk7
CkBAIC02MzMsMTIgKzY1NCwxNyBAQCB2b2lkIFN1YnRsZUNyeXB0bzo6dmVyaWZ5KEpTQzo6RXhl
Y1N0YXRlJiBzdGF0ZSwgQWxnb3JpdGhtSWRlbnRpZmllciYmIGFsZ29yaXRobQogICAgIH0KIAog
ICAgIGF1dG8gYWxnb3JpdGhtID0gQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNpbmdsZXRvbigp
LmNyZWF0ZShrZXkuYWxnb3JpdGhtSWRlbnRpZmllcigpKTsKLSAgICAKLSAgICBhdXRvIGNhbGxi
YWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShib29sIHJlc3VsdCkg
bXV0YWJsZSB7Ci0gICAgICAgIGNhcHR1cmVkUHJvbWlzZS0+cmVzb2x2ZTxJRExCb29sZWFuPihy
ZXN1bHQpOworCisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAgbV9wZW5kaW5n
UHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRvIHN1YnRsZUNy
eXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRyKCp0aGlzKTsK
KyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oYm9v
bCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlz
ZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgKCpwcm9taXNl
KS0+cmVzb2x2ZTxJRExCb29sZWFuPihyZXN1bHQpOwogICAgIH07Ci0gICAgYXV0byBleGNlcHRp
b25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRp
b25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3Zl
KGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2lu
ZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7
CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlw
dG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUo
KnByb21pc2UpLCBlYyk7CiAgICAgfTsKIAogICAgIGFsZ29yaXRobS0+dmVyaWZ5KFdURk1vdmUo
cGFyYW1zKSwga2V5LCBXVEZNb3ZlKHNpZ25hdHVyZSksIFdURk1vdmUoZGF0YSksIFdURk1vdmUo
Y2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNrKSwgKnNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSwgbV93b3JrUXVldWUpOwpAQCAtNjU2LDEyICs2ODIsMTcgQEAgdm9pZCBTdWJ0bGVD
cnlwdG86OmRpZ2VzdChKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlkZW50aWZpZXIm
JiBhbGdvcml0aG0KICAgICBhdXRvIGRhdGEgPSBjb3B5VG9WZWN0b3IoV1RGTW92ZShkYXRhQnVm
ZmVyU291cmNlKSk7CiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lz
dHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUocGFyYW1zLT5pZGVudGlmaWVyKTsKLSAgICAKLSAgICBh
dXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShjb25z
dCBWZWN0b3I8dWludDhfdD4mIGRpZ2VzdCkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1bGZpbGxQcm9t
aXNlV2l0aEFycmF5QnVmZmVyKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZGlnZXN0LmRhdGEo
KSwgZGlnZXN0LnNpemUoKSk7CisKKyAgICBhdXRvIGluZGV4ID0gcHJvbWlzZS5wdHIoKTsKKyAg
ICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1vdmUocHJvbWlzZSkpOworICAgIGF1
dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQ
dHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQ
b2ludGVyXShjb25zdCBWZWN0b3I8dWludDhfdD4mIGRpZ2VzdCkgbXV0YWJsZSB7CisgICAgICAg
IGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlcikpCisgICAgICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihXVEZNb3Zl
KCpwcm9taXNlKSwgZGlnZXN0LmRhdGEoKSwgZGlnZXN0LnNpemUoKSk7CiAgICAgfTsKLSAgICBh
dXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IFdURk1vdmUocHJvbWlz
ZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgewotICAgICAgICByZWplY3RXaXRoRXhjZXB0
aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMpOworICAgIGF1dG8gZXhjZXB0aW9uQ2Fs
bGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShFeGNlcHRpb25Db2RlIGVj
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9IGdldFByb21pc2UoaW5kZXgs
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRp
b24oV1RGTW92ZSgqcHJvbWlzZSksIGVjKTsKICAgICB9OwogCiAgICAgYWxnb3JpdGhtLT5kaWdl
c3QoV1RGTW92ZShkYXRhKSwgV1RGTW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2Fs
bGJhY2spLCAqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBtX3dvcmtRdWV1ZSk7CkBAIC02ODAs
MjYgKzcxMSwzMiBAQCB2b2lkIFN1YnRsZUNyeXB0bzo6Z2VuZXJhdGVLZXkoSlNDOjpFeGVjU3Rh
dGUmIHN0YXRlLCBBbGdvcml0aG1JZGVudGlmaWVyJiYgYWxnbwogCiAgICAgYXV0byBhbGdvcml0
aG0gPSBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkuY3JlYXRlKHBhcmFtcy0+
aWRlbnRpZmllcik7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHBy
b21pc2UuY29weVJlZigpXShLZXlPcktleVBhaXImJiBrZXlPcktleVBhaXIpIG11dGFibGUgewot
ICAgICAgICBXVEY6OnN3aXRjaE9uKGtleU9yS2V5UGFpciwKLSAgICAgICAgICAgIFsmY2FwdHVy
ZWRQcm9taXNlXSAoUmVmUHRyPENyeXB0b0tleT4mIGtleSkgewotICAgICAgICAgICAgICAgIGlm
ICgoa2V5LT50eXBlKCkgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSB8fCBrZXktPnR5cGUoKSA9
PSBDcnlwdG9LZXlUeXBlOjpTZWNyZXQpICYmICFrZXktPnVzYWdlc0JpdG1hcCgpKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21p
c2UpLCBTeW50YXhFcnJvcik7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgY2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElETElu
dGVyZmFjZTxDcnlwdG9LZXk+Pigqa2V5KTsKLSAgICAgICAgICAgIH0sCi0gICAgICAgICAgICBb
JmNhcHR1cmVkUHJvbWlzZV0gKENyeXB0b0tleVBhaXImIGtleVBhaXIpIHsKLSAgICAgICAgICAg
ICAgICBpZiAoIWtleVBhaXIucHJpdmF0ZUtleS0+dXNhZ2VzQml0bWFwKCkpIHsKLSAgICAgICAg
ICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSks
IFN5bnRheEVycm9yKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgIGF1dG8gaW5k
ZXggPSBwcm9taXNlLnB0cigpOworICAgIG1fcGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RG
TW92ZShwcm9taXNlKSk7CisgICAgYXV0byBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vh
a1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigqdGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtp
bmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEtleU9yS2V5UGFpciYmIGtleU9yS2V5UGFp
cikgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4
LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAgICAgICAgIFdURjo6c3dpdGNoT24o
a2V5T3JLZXlQYWlyLAorICAgICAgICAgICAgICAgIFsmcHJvbWlzZV0gKFJlZlB0cjxDcnlwdG9L
ZXk+JiBrZXkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKChrZXktPnR5cGUoKSA9PSBDcnlw
dG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS0+dHlwZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3Jl
dCkgJiYgIWtleS0+dXNhZ2VzQml0bWFwKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJl
amVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIFN5bnRheEVycm9yKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICAoKnByb21pc2UpLT5yZXNvbHZlPElETEludGVyZmFjZTxDcnlwdG9LZXk+
Pigqa2V5KTsKKyAgICAgICAgICAgICAgICB9LAorICAgICAgICAgICAgICAgIFsmcHJvbWlzZV0g
KENyeXB0b0tleVBhaXImIGtleVBhaXIpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCFrZXlQ
YWlyLnByaXZhdGVLZXktPnVzYWdlc0JpdG1hcCgpKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoKnByb21pc2UpLCBTeW50YXhFcnJvcik7Cisg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgKCpwcm9taXNlKS0+cmVzb2x2ZTxJRExEaWN0aW9uYXJ5PENyeXB0
b0tleVBhaXI+PihrZXlQYWlyKTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAg
Y2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElETERpY3Rpb25hcnk8Q3J5cHRvS2V5UGFpcj4+KGtl
eVBhaXIpOwotICAgICAgICAgICAgfQotICAgICAgICApOworICAgICAgICAgICAgKTsKKyAgICAg
ICAgfQogICAgIH07Ci0gICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21p
c2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAg
ICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAg
ICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRl
cl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2Ug
PSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAg
ICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoKnByb21pc2UpLCBlYyk7CiAgICAgfTsKIAog
ICAgIC8vIFRoZSAyNiBKYW51YXJ5IDIwMTcgdmVyc2lvbiBvZiB0aGUgc3BlY2lmaWNhdGlvbiBz
dWdnZXN0cyB3ZSBzaG91bGQgcGVyZm9ybSB0aGUgZm9sbG93aW5nIHRhc2sgYXN5bmNocm9ub3Vz
bHkKQEAgLTc1NSwyNCArNzkyLDMxIEBAIHZvaWQgU3VidGxlQ3J5cHRvOjpkZXJpdmVLZXkoSlND
OjpFeGVjU3RhdGUmIHN0YXRlLCBBbGdvcml0aG1JZGVudGlmaWVyJiYgYWxnb3JpCiAgICAgYXV0
byBpbXBvcnRBbGdvcml0aG0gPSBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCku
Y3JlYXRlKGltcG9ydFBhcmFtcy0+aWRlbnRpZmllcik7CiAgICAgYXV0byBhbGdvcml0aG0gPSBD
cnlwdG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkuY3JlYXRlKHBhcmFtcy0+aWRlbnRp
Zmllcik7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW3Byb21pc2UgPSBwcm9taXNlLmNvcHlSZWYo
KSwgaW1wb3J0QWxnb3JpdGhtLCBpbXBvcnRQYXJhbXMgPSBXVEZNb3ZlKGltcG9ydFBhcmFtcyks
IGV4dHJhY3RhYmxlLCBrZXlVc2FnZXNCaXRtYXBdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgZGVy
aXZlZEtleSkgbXV0YWJsZSB7CisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAg
bV9wZW5kaW5nUHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRv
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRy
KCp0aGlzKTsKKyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlciwgaW1wb3J0QWxnb3JpdGhtLCBpbXBvcnRQYXJhbXMgPSBXVEZNb3ZlKGltcG9ydFBhcmFt
cyksIGV4dHJhY3RhYmxlLCBrZXlVc2FnZXNCaXRtYXBdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYg
ZGVyaXZlZEtleSkgbXV0YWJsZSB7CiAgICAgICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5Mzk1CiAgICAgICAgIEtleURhdGEgZGF0YSA9IGRl
cml2ZWRLZXk7Ci0gICAgICAgIGF1dG8gY2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gcHJv
bWlzZS5jb3B5UmVmKCldKENyeXB0b0tleSYga2V5KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIGlm
ICgoa2V5LnR5cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS50eXBlKCkgPT0g
Q3J5cHRvS2V5VHlwZTo6U2VjcmV0KSAmJiAha2V5LnVzYWdlc0JpdG1hcCgpKSB7Ci0gICAgICAg
ICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIFN5
bnRheEVycm9yKTsKLSAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8gY2FsbGJh
Y2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShDcnlwdG9LZXkmIGtleSkgbXV0
YWJsZSB7CisgICAgICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwg
c3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKSB7CisgICAgICAgICAgICAgICAgaWYgKChrZXkudHlw
ZSgpID09IENyeXB0b0tleVR5cGU6OlByaXZhdGUgfHwga2V5LnR5cGUoKSA9PSBDcnlwdG9LZXlU
eXBlOjpTZWNyZXQpICYmICFrZXkudXNhZ2VzQml0bWFwKCkpIHsKKyAgICAgICAgICAgICAgICAg
ICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKCpwcm9taXNlKSwgU3ludGF4RXJyb3IpOwor
ICAgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICgqcHJvbWlzZSktPnJlc29sdmU8SURMSW50ZXJmYWNlPENyeXB0b0tleT4+KGtleSk7
CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjYXB0dXJlZFByb21pc2UtPnJlc29sdmU8SURM
SW50ZXJmYWNlPENyeXB0b0tleT4+KGtleSk7CiAgICAgICAgIH07Ci0gICAgICAgIGF1dG8gZXhj
ZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhj
ZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9u
KFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMpOworICAgICAgICBhdXRvIGV4Y2VwdGlvbkNh
bGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBl
YykgbXV0YWJsZSB7CisgICAgICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShp
bmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgICAgIHJlamVjdFdp
dGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIGVjKTsKICAgICAgICAgfTsKIAogICAgICAg
ICBpbXBvcnRBbGdvcml0aG0tPmltcG9ydEtleShTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UmF3
LCBXVEZNb3ZlKGRhdGEpLCBXVEZNb3ZlKGltcG9ydFBhcmFtcyksIGV4dHJhY3RhYmxlLCBrZXlV
c2FnZXNCaXRtYXAsIFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNr
KSk7CiAgICAgfTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlz
ZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgewotICAgICAg
ICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMpOworICAg
IGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVy
XShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9
IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAg
IHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIGVjKTsKICAgICB9OwogCiAg
ICAgYWxnb3JpdGhtLT5kZXJpdmVCaXRzKFdURk1vdmUocGFyYW1zKSwgYmFzZUtleSwgbGVuZ3Ro
LCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjayksICpzY3JpcHRF
eGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsKQEAgLTc5OSwxMSArODQzLDE2IEBAIHZv
aWQgU3VidGxlQ3J5cHRvOjpkZXJpdmVCaXRzKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgQWxnb3Jp
dGhtSWRlbnRpZmllciYmIGFsZ29yCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29y
aXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUocGFyYW1zLT5pZGVudGlmaWVyKTsKIAot
ICAgIGF1dG8gY2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gcHJvbWlzZS5jb3B5UmVmKCld
KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgZGVyaXZlZEtleSkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1
bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZGVy
aXZlZEtleS5kYXRhKCksIGRlcml2ZWRLZXkuc2l6ZSgpKTsKKyAgICBhdXRvIGluZGV4ID0gcHJv
bWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1vdmUocHJv
bWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQdHJGYWN0
b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5kZXgsIHN1
YnRsZUNyeXB0b1dlYWtQb2ludGVyXShjb25zdCBWZWN0b3I8dWludDhfdD4mIGRlcml2ZWRLZXkp
IG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwg
c3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgZnVsZmlsbFByb21pc2VXaXRo
QXJyYXlCdWZmZXIoV1RGTW92ZSgqcHJvbWlzZSksIGRlcml2ZWRLZXkuZGF0YSgpLCBkZXJpdmVk
S2V5LnNpemUoKSk7CiAgICAgfTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2NhcHR1
cmVkUHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUg
ewotICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwg
ZWMpOworICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dl
YWtQb2ludGVyXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8g
cHJvbWlzZSA9IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAg
ICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIGVjKTsKICAg
ICB9OwogCiAgICAgYWxnb3JpdGhtLT5kZXJpdmVCaXRzKFdURk1vdmUocGFyYW1zKSwgYmFzZUtl
eSwgbGVuZ3RoLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjayks
ICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsKQEAgLTgyOSwxNSArODc4
LDIxIEBAIHZvaWQgU3VidGxlQ3J5cHRvOjppbXBvcnRLZXkoSlNDOjpFeGVjU3RhdGUmIHN0YXRl
LCBLZXlGb3JtYXQgZm9ybWF0LCBLZXlEYXRhVmFyCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENy
eXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUocGFyYW1zLT5pZGVudGlm
aWVyKTsKIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gcHJvbWlzZS5j
b3B5UmVmKCldKENyeXB0b0tleSYga2V5KSBtdXRhYmxlIHsKLSAgICAgICAgaWYgKChrZXkudHlw
ZSgpID09IENyeXB0b0tleVR5cGU6OlByaXZhdGUgfHwga2V5LnR5cGUoKSA9PSBDcnlwdG9LZXlU
eXBlOjpTZWNyZXQpICYmICFrZXkudXNhZ2VzQml0bWFwKCkpIHsKLSAgICAgICAgICAgIHJlamVj
dFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBTeW50YXhFcnJvcik7Ci0g
ICAgICAgICAgICByZXR1cm47CisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAg
bV9wZW5kaW5nUHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRv
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRy
KCp0aGlzKTsKKyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlcl0oQ3J5cHRvS2V5JiBrZXkpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNl
ID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKSB7CisgICAgICAg
ICAgICBpZiAoKGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSB8fCBrZXkudHlw
ZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3JldCkgJiYgIWtleS51c2FnZXNCaXRtYXAoKSkgewor
ICAgICAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIFN5
bnRheEVycm9yKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICAoKnByb21pc2UpLT5yZXNvbHZlPElETEludGVyZmFjZTxDcnlwdG9LZXk+PihrZXkp
OwogICAgICAgICB9Ci0gICAgICAgIGNhcHR1cmVkUHJvbWlzZS0+cmVzb2x2ZTxJRExJbnRlcmZh
Y2U8Q3J5cHRvS2V5Pj4oa2V5KTsKICAgICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sg
PSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykg
bXV0YWJsZSB7Ci0gICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFBy
b21pc2UpLCBlYyk7CisgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxl
Q3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBp
ZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXIpKQorICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKCpwcm9taXNlKSwg
ZWMpOwogICAgIH07CiAKICAgICAvLyBUaGUgMTEgRGVjZW1iZXIgMjAxNCB2ZXJzaW9uIG9mIHRo
ZSBzcGVjaWZpY2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcg
dGFzayBhc3luY2hyb25vdXNseToKQEAgLTg2MCwyMyArOTE1LDI5IEBAIHZvaWQgU3VidGxlQ3J5
cHRvOjpleHBvcnRLZXkoS2V5Rm9ybWF0IGZvcm1hdCwgQ3J5cHRvS2V5JiBrZXksIFJlZjxEZWZl
cnJlZFByb21pCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5
OjpzaW5nbGV0b24oKS5jcmVhdGUoa2V5LmFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAKLSAgICBh
dXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShTdWJ0
bGVDcnlwdG86OktleUZvcm1hdCBmb3JtYXQsIEtleURhdGEmJiBrZXkpIG11dGFibGUgewotICAg
ICAgICBzd2l0Y2ggKGZvcm1hdCkgewotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9y
bWF0OjpTcGtpOgotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpQa2NzODoK
LSAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UmF3OiB7Ci0gICAgICAgICAg
ICBWZWN0b3I8dWludDhfdD4mIHJhd0tleSA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50OF90Pj4oa2V5
KTsKLSAgICAgICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1vdmUoY2Fw
dHVyZWRQcm9taXNlKSwgcmF3S2V5LmRhdGEoKSwgcmF3S2V5LnNpemUoKSk7Ci0gICAgICAgICAg
ICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1h
dDo6SndrOgotICAgICAgICAgICAgY2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElETERpY3Rpb25h
cnk8SnNvbldlYktleT4+KFdURk1vdmUoV1RGOjpnZXQ8SnNvbldlYktleT4oa2V5KSkpOwotICAg
ICAgICAgICAgcmV0dXJuOworICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigpOworICAgIG1f
cGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7CisgICAgYXV0byBz
dWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigq
dGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXJdKFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0IGZvcm1hdCwgS2V5RGF0YSYmIGtleSkgbXV0YWJs
ZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVD
cnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAgICAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CisgICAg
ICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpTcGtpOgorICAgICAgICAgICAg
Y2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UGtjczg6CisgICAgICAgICAgICBjYXNlIFN1
YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpSYXc6IHsKKyAgICAgICAgICAgICAgICBWZWN0b3I8dWlu
dDhfdD4mIHJhd0tleSA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50OF90Pj4oa2V5KTsKKyAgICAgICAg
ICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihXVEZNb3ZlKCpwcm9taXNlKSwg
cmF3S2V5LmRhdGEoKSwgcmF3S2V5LnNpemUoKSk7CisgICAgICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6
SndrOgorICAgICAgICAgICAgICAgICgqcHJvbWlzZSktPnJlc29sdmU8SURMRGljdGlvbmFyeTxK
c29uV2ViS2V5Pj4oV1RGTW92ZShXVEY6OmdldDxKc29uV2ViS2V5PihrZXkpKSk7CisgICAgICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CiAgICAgICAgIH0KLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAg
fTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IFdURk1v
dmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgewotICAgICAgICByZWplY3RX
aXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMpOworICAgIGF1dG8gZXhj
ZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShFeGNlcHRp
b25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9IGdldFByb21p
c2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAgIHJlamVjdFdp
dGhFeGNlcHRpb24oV1RGTW92ZSgqcHJvbWlzZSksIGVjKTsKICAgICB9OwogCiAgICAgLy8gVGhl
IDExIERlY2VtYmVyIDIwMTQgdmVyc2lvbiBvZiB0aGUgc3BlY2lmaWNhdGlvbiBzdWdnZXN0cyB3
ZSBzaG91bGQgcGVyZm9ybSB0aGUgZm9sbG93aW5nIHRhc2sgYXN5bmNocm9ub3VzbHk6CkBAIC05
MjgsNDMgKzk4OSw1MiBAQCB2b2lkIFN1YnRsZUNyeXB0bzo6d3JhcEtleShKU0M6OkV4ZWNTdGF0
ZSYgc3RhdGUsIEtleUZvcm1hdCBmb3JtYXQsIENyeXB0b0tleSYgawogCiAgICAgYXV0byBjb250
ZXh0ID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwogCi0gICAgYXV0byBjYWxsYmFjayA9IFtw
cm9taXNlID0gcHJvbWlzZS5jb3B5UmVmKCksIHdyYXBBbGdvcml0aG0sIHdyYXBwaW5nS2V5ID0g
bWFrZVJlZih3cmFwcGluZ0tleSksIHdyYXBQYXJhbXMgPSBXVEZNb3ZlKHdyYXBQYXJhbXMpLCBp
c0VuY3J5cHRpb24sIGNvbnRleHQsIHdvcmtRdWV1ZSA9IG1fd29ya1F1ZXVlLmNvcHlSZWYoKV0o
U3VidGxlQ3J5cHRvOjpLZXlGb3JtYXQgZm9ybWF0LCBLZXlEYXRhJiYga2V5KSBtdXRhYmxlIHsK
LSAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzOwotICAgICAgICBzd2l0Y2ggKGZvcm1hdCkg
ewotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpTcGtpOgotICAgICAgICBj
YXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpQa2NzODoKLSAgICAgICAgY2FzZSBTdWJ0bGVD
cnlwdG86OktleUZvcm1hdDo6UmF3OgotICAgICAgICAgICAgYnl0ZXMgPSBXVEY6OmdldDxWZWN0
b3I8dWludDhfdD4+KGtleSk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBTdWJ0
bGVDcnlwdG86OktleUZvcm1hdDo6SndrOiB7Ci0gICAgICAgICAgICAvLyBGSVhNRTogQ29udmVy
dGluZyB0byBKUyBqdXN0IHRvIEpTT04tU3RyaW5naWZ5IHNlZW1zIGluZWZmaWNpZW50LiBXZSBz
aG91bGQgZmluZCBhIHdheSB0byBnbyBkaXJlY3RseSBmcm9tIHRoZSBzdHJ1Y3QgdG8gSlNPTi4K
LSAgICAgICAgICAgIGF1dG8gandrID0gdG9KUzxJRExEaWN0aW9uYXJ5PEpzb25XZWJLZXk+Pigq
KHByb21pc2UtPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCkpLCAqKHByb21pc2UtPmdsb2Jh
bE9iamVjdCgpKSwgV1RGTW92ZShXVEY6OmdldDxKc29uV2ViS2V5PihrZXkpKSk7Ci0gICAgICAg
ICAgICBTdHJpbmcgandrU3RyaW5nID0gSlNPTlN0cmluZ2lmeShwcm9taXNlLT5nbG9iYWxPYmpl
Y3QoKS0+Z2xvYmFsRXhlYygpLCBqd2ssIDApOwotICAgICAgICAgICAgQ1N0cmluZyBqd2tVdGY4
U3RyaW5nID0gandrU3RyaW5nLnV0ZjgoU3RyaWN0Q29udmVyc2lvbik7Ci0gICAgICAgICAgICBi
eXRlcy5hcHBlbmQoandrVXRmOFN0cmluZy5kYXRhKCksIGp3a1V0ZjhTdHJpbmcubGVuZ3RoKCkp
OwotICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICBhdXRvIGNhbGxiYWNrID0gW3Byb21p
c2UgPSBwcm9taXNlLmNvcHlSZWYoKV0oY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVkS2V5
KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdU
Rk1vdmUocHJvbWlzZSksIHdyYXBwZWRLZXkuZGF0YSgpLCB3cmFwcGVkS2V5LnNpemUoKSk7Ci0g
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH07Ci0gICAgICAgIGF1dG8gZXhjZXB0aW9uQ2Fs
bGJhY2sgPSBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11
dGFibGUgewotICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKHByb21pc2Up
LCBlYyk7Ci0gICAgICAgIH07CisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAg
bV9wZW5kaW5nUHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRv
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRy
KCp0aGlzKTsKKyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlciwgd3JhcEFsZ29yaXRobSwgd3JhcHBpbmdLZXkgPSBtYWtlUmVmKHdyYXBwaW5nS2V5KSwg
d3JhcFBhcmFtcyA9IFdURk1vdmUod3JhcFBhcmFtcyksIGlzRW5jcnlwdGlvbiwgY29udGV4dCwg
d29ya1F1ZXVlID0gbV93b3JrUXVldWUuY29weVJlZigpXShTdWJ0bGVDcnlwdG86OktleUZvcm1h
dCBmb3JtYXQsIEtleURhdGEmJiBrZXkpIG11dGFibGUgeworICAgICAgICBpZiAoc3VidGxlQ3J5
cHRvV2Vha1BvaW50ZXIpIHsKKyAgICAgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBzdWJ0bGVD
cnlwdG9XZWFrUG9pbnRlci0+bV9wZW5kaW5nUHJvbWlzZXMuZ2V0KGluZGV4KSkgeworICAgICAg
ICAgICAgICAgIFZlY3Rvcjx1aW50OF90PiBieXRlczsKKyAgICAgICAgICAgICAgICBzd2l0Y2gg
KGZvcm1hdCkgeworICAgICAgICAgICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlGb3JtYXQ6
OlNwa2k6CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UGtj
czg6CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UmF3Ogor
ICAgICAgICAgICAgICAgICAgICBieXRlcyA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50OF90Pj4oa2V5
KTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0
bGVDcnlwdG86OktleUZvcm1hdDo6SndrOiB7CisgICAgICAgICAgICAgICAgICAgIC8vIEZJWE1F
OiBDb252ZXJ0aW5nIHRvIEpTIGp1c3QgdG8gSlNPTi1TdHJpbmdpZnkgc2VlbXMgaW5lZmZpY2ll
bnQuIFdlIHNob3VsZCBmaW5kIGEgd2F5IHRvIGdvIGRpcmVjdGx5IGZyb20gdGhlIHN0cnVjdCB0
byBKU09OLgorICAgICAgICAgICAgICAgICAgICBhdXRvIGp3ayA9IHRvSlM8SURMRGljdGlvbmFy
eTxKc29uV2ViS2V5Pj4oKihwcm9taXNlLT5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpKSwg
Kihwcm9taXNlLT5nbG9iYWxPYmplY3QoKSksIFdURk1vdmUoV1RGOjpnZXQ8SnNvbldlYktleT4o
a2V5KSkpOworICAgICAgICAgICAgICAgICAgICBTdHJpbmcgandrU3RyaW5nID0gSlNPTlN0cmlu
Z2lmeShwcm9taXNlLT5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpLCBqd2ssIDApOworICAg
ICAgICAgICAgICAgICAgICBDU3RyaW5nIGp3a1V0ZjhTdHJpbmcgPSBqd2tTdHJpbmcudXRmOChT
dHJpY3RDb252ZXJzaW9uKTsKKyAgICAgICAgICAgICAgICAgICAgYnl0ZXMuYXBwZW5kKGp3a1V0
ZjhTdHJpbmcuZGF0YSgpLCBqd2tVdGY4U3RyaW5nLmxlbmd0aCgpKTsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgfQogCi0gICAgICAgIGlmICghaXNFbmNyeXB0aW9uKSB7Ci0g
ICAgICAgICAgICAvLyBUaGUgMTEgRGVjZW1iZXIgMjAxNCB2ZXJzaW9uIG9mIHRoZSBzcGVjaWZp
Y2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgdGFzayBhc3lu
Y2hyb25vdXNseToKLSAgICAgICAgICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XZWJDcnlw
dG9BUEkvI1N1YnRsZUNyeXB0by1tZXRob2Qtd3JhcEtleQotICAgICAgICAgICAgLy8gSXQgaXMg
bm90IGJlbmVmaWNpYWwgZm9yIGxlc3MgdGltZSBjb25zdW1pbmcgb3BlcmF0aW9ucy4gVGhlcmVm
b3JlLCB3ZSBwZXJmb3JtIGl0IHN5bmNocm9ub3VzbHkuCi0gICAgICAgICAgICB3cmFwQWxnb3Jp
dGhtLT53cmFwS2V5KHdyYXBwaW5nS2V5LmdldCgpLCBXVEZNb3ZlKGJ5dGVzKSwgV1RGTW92ZShj
YWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2spKTsKLSAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgICAgICAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9X
ZWFrUG9pbnRlcl0oY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVkS2V5KSBtdXRhYmxlIHsK
KyAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9IGdldFByb21pc2UoaW5kZXgs
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGZp
bGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1vdmUoKnByb21pc2UpLCB3cmFwcGVkS2V5LmRh
dGEoKSwgd3JhcHBlZEtleS5zaXplKCkpOworICAgICAgICAgICAgICAgIH07CisgICAgICAgICAg
ICAgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1Bv
aW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICAgICAgICAgICAgICBp
ZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXIpKQorICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3Zl
KCpwcm9taXNlKSwgZWMpOworICAgICAgICAgICAgICAgIH07CisKKyAgICAgICAgICAgICAgICBp
ZiAoIWlzRW5jcnlwdGlvbikgeworICAgICAgICAgICAgICAgICAgICAvLyBUaGUgMTEgRGVjZW1i
ZXIgMjAxNCB2ZXJzaW9uIG9mIHRoZSBzcGVjaWZpY2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBw
ZXJmb3JtIHRoZSBmb2xsb3dpbmcgdGFzayBhc3luY2hyb25vdXNseToKKyAgICAgICAgICAgICAg
ICAgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL1dlYkNyeXB0b0FQSS8jU3VidGxlQ3J5cHRv
LW1ldGhvZC13cmFwS2V5CisgICAgICAgICAgICAgICAgICAgIC8vIEl0IGlzIG5vdCBiZW5lZmlj
aWFsIGZvciBsZXNzIHRpbWUgY29uc3VtaW5nIG9wZXJhdGlvbnMuIFRoZXJlZm9yZSwgd2UgcGVy
Zm9ybSBpdCBzeW5jaHJvbm91c2x5LgorICAgICAgICAgICAgICAgICAgICB3cmFwQWxnb3JpdGht
LT53cmFwS2V5KHdyYXBwaW5nS2V5LmdldCgpLCBXVEZNb3ZlKGJ5dGVzKSwgV1RGTW92ZShjYWxs
YmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2spKTsKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAvLyBUaGUgZm9sbG93
aW5nIG9wZXJhdGlvbiBzaG91bGQgYmUgcGVyZm9ybWVkIGFzeW5jaHJvbm91c2x5LgorICAgICAg
ICAgICAgICAgIHdyYXBBbGdvcml0aG0tPmVuY3J5cHQoV1RGTW92ZSh3cmFwUGFyYW1zKSwgV1RG
TW92ZSh3cmFwcGluZ0tleSksIFdURk1vdmUoYnl0ZXMpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RG
TW92ZShleGNlcHRpb25DYWxsYmFjayksICpjb250ZXh0LCB3b3JrUXVldWUpOworICAgICAgICAg
ICAgfQogICAgICAgICB9Ci0gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgb3BlcmF0aW9uIHNob3Vs
ZCBiZSBwZXJmb3JtZWQgYXN5bmNocm9ub3VzbHkuCi0gICAgICAgIHdyYXBBbGdvcml0aG0tPmVu
Y3J5cHQoV1RGTW92ZSh3cmFwUGFyYW1zKSwgV1RGTW92ZSh3cmFwcGluZ0tleSksIFdURk1vdmUo
Ynl0ZXMpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjayksICpj
b250ZXh0LCB3b3JrUXVldWUpOwogICAgIH07Ci0gICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9
IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVjKSBt
dXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJv
bWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVD
cnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgIGlm
IChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRl
cikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoKnByb21pc2UpLCBl
Yyk7CiAgICAgfTsKIAogICAgIC8vIFRoZSBmb2xsb3dpbmcgb3BlcmF0aW9uIHNob3VsZCBiZSBw
ZXJmb3JtZWQgc3luY2hyb25vdXNseS4KQEAgLTEwMjIsNTEgKzEwOTIsNjIgQEAgdm9pZCBTdWJ0
bGVDcnlwdG86OnVud3JhcEtleShKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEtleUZvcm1hdCBmb3Jt
YXQsIEJ1ZmZlclNvdXIKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGF1dG8gY2FsbGJh
Y2sgPSBbcHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpLCBmb3JtYXQsIGltcG9ydEFsZ29yaXRo
bSwgdW53cmFwcGVkS2V5QWxnb3JpdGhtID0gV1RGTW92ZSh1bndyYXBwZWRLZXlBbGdvcml0aG0p
LCBleHRyYWN0YWJsZSwga2V5VXNhZ2VzQml0bWFwXShjb25zdCBWZWN0b3I8dWludDhfdD4mIGJ5
dGVzKSBtdXRhYmxlIHsKLSAgICAgICAgS2V5RGF0YSBrZXlEYXRhOwotICAgICAgICBzd2l0Y2gg
KGZvcm1hdCkgewotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpTcGtpOgot
ICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpQa2NzODoKLSAgICAgICAgY2Fz
ZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UmF3OgotICAgICAgICAgICAga2V5RGF0YSA9IGJ5
dGVzOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlG
b3JtYXQ6Okp3azogewotICAgICAgICAgICAgYXV0byYgc3RhdGUgPSAqKHByb21pc2UtPmdsb2Jh
bE9iamVjdCgpLT5nbG9iYWxFeGVjKCkpOwotICAgICAgICAgICAgYXV0byYgdm0gPSBzdGF0ZS52
bSgpOwotICAgICAgICAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwot
Ci0gICAgICAgICAgICBTdHJpbmcgandrU3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3RfcHRyPGNvbnN0
IGNoYXIqPihieXRlcy5kYXRhKCkpLCBieXRlcy5zaXplKCkpOwotICAgICAgICAgICAgSlNMb2Nr
SG9sZGVyIGxvY2tlcih2bSk7Ci0gICAgICAgICAgICBhdXRvIGp3a09iamVjdCA9IEpTT05QYXJz
ZSgmc3RhdGUsIGp3a1N0cmluZyk7Ci0gICAgICAgICAgICBpZiAoIWp3a09iamVjdCkgewotICAg
ICAgICAgICAgICAgIHByb21pc2UtPnJlamVjdChEYXRhRXJyb3IsIEFTQ0lJTGl0ZXJhbCgiV3Jh
cHBlZEtleSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgSlNPTiBvYmplY3QiKSk7Ci0gICAgICAg
ICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYXV0byBqd2sgPSBj
b252ZXJ0PElETERpY3Rpb25hcnk8SnNvbldlYktleT4+KHN0YXRlLCBqd2tPYmplY3QpOwotICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKLSAgICAgICAgICAg
IG5vcm1hbGl6ZUpzb25XZWJLZXkoandrKTsKLQotICAgICAgICAgICAga2V5RGF0YSA9IGp3azsK
LSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAgIH0KKyAgICBhdXRvIGluZGV4
ID0gcHJvbWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1v
dmUocHJvbWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQ
dHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5k
ZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyLCBmb3JtYXQsIGltcG9ydEFsZ29yaXRobSwgdW53
cmFwcGVkS2V5QWxnb3JpdGhtID0gV1RGTW92ZSh1bndyYXBwZWRLZXlBbGdvcml0aG0pLCBleHRy
YWN0YWJsZSwga2V5VXNhZ2VzQml0bWFwXShjb25zdCBWZWN0b3I8dWludDhfdD4mIGJ5dGVzKSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSB7CisgICAgICAg
ICAgICBpZiAoYXV0byBwcm9taXNlID0gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXItPm1fcGVuZGlu
Z1Byb21pc2VzLmdldChpbmRleCkpIHsKKyAgICAgICAgICAgICAgICBLZXlEYXRhIGtleURhdGE7
CisgICAgICAgICAgICAgICAgc3dpdGNoIChmb3JtYXQpIHsKKyAgICAgICAgICAgICAgICBjYXNl
IFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpTcGtpOgorICAgICAgICAgICAgICAgIGNhc2UgU3Vi
dGxlQ3J5cHRvOjpLZXlGb3JtYXQ6OlBrY3M4OgorICAgICAgICAgICAgICAgIGNhc2UgU3VidGxl
Q3J5cHRvOjpLZXlGb3JtYXQ6OlJhdzoKKyAgICAgICAgICAgICAgICAgICAga2V5RGF0YSA9IGJ5
dGVzOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIFN1
YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpKd2s6IHsKKyAgICAgICAgICAgICAgICAgICAgYXV0byYg
c3RhdGUgPSAqKHByb21pc2UtPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCkpOworICAgICAg
ICAgICAgICAgICAgICBhdXRvJiB2bSA9IHN0YXRlLnZtKCk7CisgICAgICAgICAgICAgICAgICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKKworICAgICAgICAgICAgICAg
ICAgICBTdHJpbmcgandrU3RyaW5nKHJlaW50ZXJwcmV0X2Nhc3RfcHRyPGNvbnN0IGNoYXIqPihi
eXRlcy5kYXRhKCkpLCBieXRlcy5zaXplKCkpOworICAgICAgICAgICAgICAgICAgICBKU0xvY2tI
b2xkZXIgbG9ja2VyKHZtKTsKKyAgICAgICAgICAgICAgICAgICAgYXV0byBqd2tPYmplY3QgPSBK
U09OUGFyc2UoJnN0YXRlLCBqd2tTdHJpbmcpOworICAgICAgICAgICAgICAgICAgICBpZiAoIWp3
a09iamVjdCkgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvbWlzZS0+cmVqZWN0KERhdGFF
cnJvciwgQVNDSUlMaXRlcmFsKCJXcmFwcGVkS2V5IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBK
U09OIG9iamVjdCIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBhdXRvIGp3ayA9IGNvbnZlcnQ8SURM
RGljdGlvbmFyeTxKc29uV2ViS2V5Pj4oc3RhdGUsIGp3a09iamVjdCk7CisgICAgICAgICAgICAg
ICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CisgICAgICAgICAgICAg
ICAgICAgIG5vcm1hbGl6ZUpzb25XZWJLZXkoandrKTsKKworICAgICAgICAgICAgICAgICAgICBr
ZXlEYXRhID0gandrOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgfQogCi0gICAgICAgIGF1dG8gY2FsbGJhY2sgPSBbcHJvbWlz
ZSA9IHByb21pc2UuY29weVJlZigpXShDcnlwdG9LZXkmIGtleSkgbXV0YWJsZSB7Ci0gICAgICAg
ICAgICBpZiAoKGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSB8fCBrZXkudHlw
ZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3JldCkgJiYgIWtleS51c2FnZXNCaXRtYXAoKSkgewot
ICAgICAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShwcm9taXNlKSwgU3lu
dGF4RXJyb3IpOwotICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAgICBhdXRv
IGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oQ3J5cHRvS2V5JiBr
ZXkpIG11dGFibGUgeworICAgICAgICAgICAgICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0
UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBpZiAoKGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSB8fCBr
ZXkudHlwZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3JldCkgJiYgIWtleS51c2FnZXNCaXRtYXAo
KSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RG
TW92ZSgqcHJvbWlzZSksIFN5bnRheEVycm9yKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
ICAgICAoKnByb21pc2UpLT5yZXNvbHZlPElETEludGVyZmFjZTxDcnlwdG9LZXk+PihrZXkpOwor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAg
ICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRl
cl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChh
dXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikp
CisgICAgICAgICAgICAgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoKnBy
b21pc2UpLCBlYyk7CisgICAgICAgICAgICAgICAgfTsKKworICAgICAgICAgICAgICAgIC8vIFRo
ZSBmb2xsb3dpbmcgb3BlcmF0aW9uIHNob3VsZCBiZSBwZXJmb3JtZWQgc3luY2hyb25vdXNseS4K
KyAgICAgICAgICAgICAgICBpbXBvcnRBbGdvcml0aG0tPmltcG9ydEtleShmb3JtYXQsIFdURk1v
dmUoa2V5RGF0YSksIFdURk1vdmUodW53cmFwcGVkS2V5QWxnb3JpdGhtKSwgZXh0cmFjdGFibGUs
IGtleVVzYWdlc0JpdG1hcCwgV1RGTW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2Fs
bGJhY2spKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHByb21pc2UtPnJlc29sdmU8SURM
SW50ZXJmYWNlPENyeXB0b0tleT4+KGtleSk7Ci0gICAgICAgIH07Ci0gICAgICAgIGF1dG8gZXhj
ZXB0aW9uQ2FsbGJhY2sgPSBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNv
ZGUgZWMpIG11dGFibGUgewotICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3Zl
KHByb21pc2UpLCBlYyk7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBv
cGVyYXRpb24gc2hvdWxkIGJlIHBlcmZvcm1lZCBzeW5jaHJvbm91c2x5LgotICAgICAgICBpbXBv
cnRBbGdvcml0aG0tPmltcG9ydEtleShmb3JtYXQsIFdURk1vdmUoa2V5RGF0YSksIFdURk1vdmUo
dW53cmFwcGVkS2V5QWxnb3JpdGhtKSwgZXh0cmFjdGFibGUsIGtleVVzYWdlc0JpdG1hcCwgV1RG
TW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2spKTsKKyAgICAgICAgfQog
ICAgIH07Ci0gICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBX
VEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAgICAgcmVq
ZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAgICBhdXRv
IGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhj
ZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQ
cm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICByZWpl
Y3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoKnByb21pc2UpLCBlYyk7CiAgICAgfTsKIAogICAgIGlm
ICghaXNEZWNyeXB0aW9uKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vU3Vi
dGxlQ3J5cHRvLmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vU3VidGxlQ3J5cHRvLmgKaW5kZXgg
ODNlZDIzNTcyYmRiN2JjZmZkODQzOTIwOWQyMTE2OTI5MzM5MGM2Ni4uNWM0ZTYwMmM2OGQxNDU5
NWNmNDYyZDMzMWVhZDliNjBjNDUwZDQ1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3J5
cHRvL1N1YnRsZUNyeXB0by5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0bGVDcnlw
dG8uaApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CisjaW5jbHVkZSA8d3Rm
L1dlYWtQdHIuaD4KICNpbmNsdWRlIDx3dGYvV29ya1F1ZXVlLmg+CiAKIG5hbWVzcGFjZSBKU0Mg
ewpAQCAtNzcsNyArNzgsMTEgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBTdWJ0bGVDcnlwdG8o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpOwogCisgICAgaW5saW5lIGZyaWVuZCBzdGQ6Om9wdGlv
bmFsPFJlZjxEZWZlcnJlZFByb21pc2U+PiBnZXRQcm9taXNlKERlZmVycmVkUHJvbWlzZSosIFdl
YWtQdHI8U3VidGxlQ3J5cHRvPik7CisKICAgICBSZWY8V29ya1F1ZXVlPiBtX3dvcmtRdWV1ZTsK
KyAgICBIYXNoTWFwPERlZmVycmVkUHJvbWlzZSosIFJlZjxEZWZlcnJlZFByb21pc2U+PiBtX3Bl
bmRpbmdQcm9taXNlczsKKyAgICBXZWFrUHRyRmFjdG9yeTxTdWJ0bGVDcnlwdG8+IG1fd2Vha1B0
ckZhY3Rvcnk7CiB9OwogCiB9Cg==
</data>
<flag name="review"
          id="349259"
          type_id="1"
          status="+"
          setter="youennf"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330267</attachid>
            <date>2017-12-30 22:34:38 -0800</date>
            <delta_ts>2017-12-31 01:25:51 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-180499-20171230223438.patch</filename>
            <type>text/plain</type>
            <size>32751</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTgzZDJlNWNkMzBhZTk5
OGU5MjE0OWViNjllNTZlOTUzMmU3OTNiNy4uMjQxOTVkNTI0MDIzOThmN2UwODZiZTQ4YzkxYWYy
ODM0MWZjNGU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE3LTEyLTI3ICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gQXZv
aWQgcHJvbWlzZXMgYmVpbmcgZGVzdHJveWVkIGluIHNlY29uZGFyeSB0aHJlYWRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA0OTkKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzM1ODkwNjgwPgorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBG
YWJsZXQuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIHBlbmRpbmcgcHJvbWlzZSBxdWV1ZSB0
byBTdWJ0bGVDcnlwdG8gc3VjaCB0aGF0IGl0IG5vIGxvbmdlcgorICAgICAgICBwYXNzZXMgcHJv
bWlzZXMgYXJvdW5kIGRpZmZlcmVudCB0aHJlYWRzLCB3aGljaCBjb3VsZCBjYXVzZSBjcmFzaGVz
IHdoZW4KKyAgICAgICAgcHJvbWlzZXMgYXJlIGRlc3Ryb3llZCBpbiBzZWNvbmRhcnkgdGhyZWFk
cy4KKworICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogY3J5
cHRvL1N1YnRsZUNyeXB0by5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRQcm9taXNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6ZW5jcnlwdCk6CisgICAgICAgIChXZWJDb3Jl
OjpTdWJ0bGVDcnlwdG86OmRlY3J5cHQpOgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRv
OjpzaWduKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6dmVyaWZ5KToKKyAgICAg
ICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6ZGlnZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OlN1
YnRsZUNyeXB0bzo6Z2VuZXJhdGVLZXkpOgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRv
OjpkZXJpdmVLZXkpOgorICAgICAgICAoV2ViQ29yZTo6U3VidGxlQ3J5cHRvOjpkZXJpdmVCaXRz
KToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6aW1wb3J0S2V5KToKKyAgICAgICAg
KFdlYkNvcmU6OlN1YnRsZUNyeXB0bzo6ZXhwb3J0S2V5KToKKyAgICAgICAgKFdlYkNvcmU6OlN1
YnRsZUNyeXB0bzo6d3JhcEtleSk6CisgICAgICAgIChXZWJDb3JlOjpTdWJ0bGVDcnlwdG86OnVu
d3JhcEtleSk6CisgICAgICAgICogY3J5cHRvL1N1YnRsZUNyeXB0by5oOgorCiAyMDE3LTEyLTIx
ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIENy
ZWRlbnRpYWwgTWFuYWdlbWVudCBBUEkgZm9yIFdlYkF1dGhlbnRpY2F0aW9uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vU3VidGxlQ3J5cHRvLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9TdWJ0bGVDcnlwdG8uY3BwCmluZGV4IDM3YWI2NzI5NzUzYTNhOTE1YjdjZWNlMWZj
MmYzZjE5MjlmMDVjZDYuLjQyYzMyOTQ5NTAzZDM1OWQ2MGQ2M2M2NDVlOTY4Y2VlM2Q3YTkwYmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0bGVDcnlwdG8uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0bGVDcnlwdG8uY3BwCkBAIC01MDgsNiArNTA4LDE0
IEBAIHN0YXRpYyBib29sIGlzU3VwcG9ydGVkRXhwb3J0S2V5KENyeXB0b0FsZ29yaXRobUlkZW50
aWZpZXIgaWRlbnRpZmllcikKICAgICB9CiB9CiAKK1JlZlB0cjxEZWZlcnJlZFByb21pc2U+IGdl
dFByb21pc2UoRGVmZXJyZWRQcm9taXNlKiBpbmRleCwgV2Vha1B0cjxTdWJ0bGVDcnlwdG8+IHN1
YnRsZUNyeXB0b1dlYWtQb2ludGVyKQoreworICAgIGlmIChzdWJ0bGVDcnlwdG9XZWFrUG9pbnRl
cikgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIt
Pm1fcGVuZGluZ1Byb21pc2VzLnRha2UoaW5kZXgpKQorICAgICAgICAgICAgcmV0dXJuIFdURk1v
dmUocHJvbWlzZS52YWx1ZSgpKTsKKyAgICB9CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CiAKIC8v
IE1BUks6IC0gRXhwb3NlZCBmdW5jdGlvbnMuCiAKQEAgLTUzNCwxMSArNTQyLDE2IEBAIHZvaWQg
U3VidGxlQ3J5cHRvOjplbmNyeXB0KEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgQWxnb3JpdGhtSWRl
bnRpZmllciYmIGFsZ29yaXRoCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRo
bVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUoa2V5LmFsZ29yaXRobUlkZW50aWZpZXIoKSk7
CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJl
ZigpXShjb25zdCBWZWN0b3I8dWludDhfdD4mIGNpcGhlclRleHQpIG11dGFibGUgewotICAgICAg
ICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSks
IGNpcGhlclRleHQuZGF0YSgpLCBjaXBoZXJUZXh0LnNpemUoKSk7CisgICAgYXV0byBpbmRleCA9
IHByb21pc2UucHRyKCk7CisgICAgbV9wZW5kaW5nUHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3Zl
KHByb21pc2UpKTsKKyAgICBhdXRvIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRy
RmFjdG9yeS5jcmVhdGVXZWFrUHRyKCp0aGlzKTsKKyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4
LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBjaXBoZXJU
ZXh0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9IGdldFByb21pc2UoaW5k
ZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAgIGZ1bGZpbGxQcm9taXNl
V2l0aEFycmF5QnVmZmVyKHByb21pc2UucmVsZWFzZU5vbk51bGwoKSwgY2lwaGVyVGV4dC5kYXRh
KCksIGNpcGhlclRleHQuc2l6ZSgpKTsKICAgICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJh
Y2sgPSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBl
YykgbXV0YWJsZSB7Ci0gICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJl
ZFByb21pc2UpLCBlYyk7CisgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3Vi
dGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAg
ICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1Bv
aW50ZXIpKQorICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VO
b25OdWxsKCksIGVjKTsKICAgICB9OwogCiAgICAgYWxnb3JpdGhtLT5lbmNyeXB0KFdURk1vdmUo
cGFyYW1zKSwga2V5LCBXVEZNb3ZlKGRhdGEpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShl
eGNlcHRpb25DYWxsYmFjayksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVl
KTsKQEAgLTU2NywxMSArNTgwLDE2IEBAIHZvaWQgU3VidGxlQ3J5cHRvOjpkZWNyeXB0KEpTQzo6
RXhlY1N0YXRlJiBzdGF0ZSwgQWxnb3JpdGhtSWRlbnRpZmllciYmIGFsZ29yaXRoCiAKICAgICBh
dXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVh
dGUoa2V5LmFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2Nh
cHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShjb25zdCBWZWN0b3I8dWludDhfdD4m
IHBsYWluVGV4dCkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVm
ZmVyKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgcGxhaW5UZXh0LmRhdGEoKSwgcGxhaW5UZXh0
LnNpemUoKSk7CisgICAgYXV0byBpbmRleCA9IHByb21pc2UucHRyKCk7CisgICAgbV9wZW5kaW5n
UHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21pc2UpKTsKKyAgICBhdXRvIHN1YnRsZUNy
eXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVXZWFrUHRyKCp0aGlzKTsK
KyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiBwbGFpblRleHQpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0
byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQor
ICAgICAgICAgICAgZnVsZmlsbFByb21pc2VXaXRoQXJyYXlCdWZmZXIocHJvbWlzZS5yZWxlYXNl
Tm9uTnVsbCgpLCBwbGFpblRleHQuZGF0YSgpLCBwbGFpblRleHQuc2l6ZSgpKTsKICAgICB9Owot
ICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92ZShw
cm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAgICAgIHJlamVjdFdpdGhF
eGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBlYyk7CisgICAgYXV0byBleGNlcHRp
b25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNv
ZGUgZWMpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShp
bmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgcmVqZWN0V2l0aEV4
Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25OdWxsKCksIGVjKTsKICAgICB9OwogCiAgICAgYWxn
b3JpdGhtLT5kZWNyeXB0KFdURk1vdmUocGFyYW1zKSwga2V5LCBXVEZNb3ZlKGRhdGEpLCBXVEZN
b3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjayksICpzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsKQEAgLTYwMCwxMSArNjE4LDE2IEBAIHZvaWQgU3Vi
dGxlQ3J5cHRvOjpzaWduKEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgQWxnb3JpdGhtSWRlbnRpZmll
ciYmIGFsZ29yaXRobUlkCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJl
Z2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUoa2V5LmFsZ29yaXRobUlkZW50aWZpZXIoKSk7CiAK
LSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigp
XShjb25zdCBWZWN0b3I8dWludDhfdD4mIHNpZ25hdHVyZSkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1
bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgc2ln
bmF0dXJlLmRhdGEoKSwgc2lnbmF0dXJlLnNpemUoKSk7CisgICAgYXV0byBpbmRleCA9IHByb21p
c2UucHRyKCk7CisgICAgbV9wZW5kaW5nUHJvbWlzZXMuYWRkKGluZGV4LCBXVEZNb3ZlKHByb21p
c2UpKTsKKyAgICBhdXRvIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyID0gbV93ZWFrUHRyRmFjdG9y
eS5jcmVhdGVXZWFrUHRyKCp0aGlzKTsKKyAgICBhdXRvIGNhbGxiYWNrID0gW2luZGV4LCBzdWJ0
bGVDcnlwdG9XZWFrUG9pbnRlcl0oY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBzaWduYXR1cmUpIG11
dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3Vi
dGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgZnVsZmlsbFByb21pc2VXaXRoQXJy
YXlCdWZmZXIocHJvbWlzZS5yZWxlYXNlTm9uTnVsbCgpLCBzaWduYXR1cmUuZGF0YSgpLCBzaWdu
YXR1cmUuc2l6ZSgpKTsKICAgICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2Fw
dHVyZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJs
ZSB7Ci0gICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2Up
LCBlYyk7CisgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRv
V2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0
byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQor
ICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25OdWxsKCks
IGVjKTsKICAgICB9OwogCiAgICAgYWxnb3JpdGhtLT5zaWduKFdURk1vdmUocGFyYW1zKSwga2V5
LCBXVEZNb3ZlKGRhdGEpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxs
YmFjayksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsKQEAgLTYzMywx
MiArNjU2LDE3IEBAIHZvaWQgU3VidGxlQ3J5cHRvOjp2ZXJpZnkoSlNDOjpFeGVjU3RhdGUmIHN0
YXRlLCBBbGdvcml0aG1JZGVudGlmaWVyJiYgYWxnb3JpdGhtCiAgICAgfQogCiAgICAgYXV0byBh
bGdvcml0aG0gPSBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkuY3JlYXRlKGtl
eS5hbGdvcml0aG1JZGVudGlmaWVyKCkpOwotICAgIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbY2Fw
dHVyZWRQcm9taXNlID0gcHJvbWlzZS5jb3B5UmVmKCldKGJvb2wgcmVzdWx0KSBtdXRhYmxlIHsK
LSAgICAgICAgY2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElETEJvb2xlYW4+KHJlc3VsdCk7CisK
KyAgICBhdXRvIGluZGV4ID0gcHJvbWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5h
ZGQoaW5kZXgsIFdURk1vdmUocHJvbWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1Bv
aW50ZXIgPSBtX3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8g
Y2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShib29sIHJlc3VsdCkg
bXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBz
dWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICBwcm9taXNlLT5yZXNvbHZlPElE
TEJvb2xlYW4+KHJlc3VsdCk7CiAgICAgfTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0g
W2NhcHR1cmVkUHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11
dGFibGUgewotICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9t
aXNlKSwgZWMpOworICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNy
eXB0b1dlYWtQb2ludGVyXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAgaWYg
KGF1dG8gcHJvbWlzZSA9IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVy
KSkKKyAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24ocHJvbWlzZS5yZWxlYXNlTm9uTnVs
bCgpLCBlYyk7CiAgICAgfTsKIAogICAgIGFsZ29yaXRobS0+dmVyaWZ5KFdURk1vdmUocGFyYW1z
KSwga2V5LCBXVEZNb3ZlKHNpZ25hdHVyZSksIFdURk1vdmUoZGF0YSksIFdURk1vdmUoY2FsbGJh
Y2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNrKSwgKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSwgbV93b3JrUXVldWUpOwpAQCAtNjU2LDEyICs2ODQsMTcgQEAgdm9pZCBTdWJ0bGVDcnlwdG86
OmRpZ2VzdChKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlkZW50aWZpZXImJiBhbGdv
cml0aG0KICAgICBhdXRvIGRhdGEgPSBjb3B5VG9WZWN0b3IoV1RGTW92ZShkYXRhQnVmZmVyU291
cmNlKSk7CiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5Ojpz
aW5nbGV0b24oKS5jcmVhdGUocGFyYW1zLT5pZGVudGlmaWVyKTsKLSAgICAKLSAgICBhdXRvIGNh
bGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShjb25zdCBWZWN0
b3I8dWludDhfdD4mIGRpZ2VzdCkgbXV0YWJsZSB7Ci0gICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0
aEFycmF5QnVmZmVyKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZGlnZXN0LmRhdGEoKSwgZGln
ZXN0LnNpemUoKSk7CisKKyAgICBhdXRvIGluZGV4ID0gcHJvbWlzZS5wdHIoKTsKKyAgICBtX3Bl
bmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1vdmUocHJvbWlzZSkpOworICAgIGF1dG8gc3Vi
dGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRo
aXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVy
XShjb25zdCBWZWN0b3I8dWludDhfdD4mIGRpZ2VzdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChh
dXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikp
CisgICAgICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihwcm9taXNlLnJlbGVh
c2VOb25OdWxsKCksIGRpZ2VzdC5kYXRhKCksIGRpZ2VzdC5zaXplKCkpOwogICAgIH07Ci0gICAg
YXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21p
c2UpXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2Vw
dGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNh
bGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBl
YykgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4
LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0
aW9uKHByb21pc2UucmVsZWFzZU5vbk51bGwoKSwgZWMpOwogICAgIH07CiAKICAgICBhbGdvcml0
aG0tPmRpZ2VzdChXVEZNb3ZlKGRhdGEpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNl
cHRpb25DYWxsYmFjayksICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIG1fd29ya1F1ZXVlKTsK
QEAgLTY4MCwyNiArNzEzLDMyIEBAIHZvaWQgU3VidGxlQ3J5cHRvOjpnZW5lcmF0ZUtleShKU0M6
OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlkZW50aWZpZXImJiBhbGdvCiAKICAgICBhdXRv
IGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUo
cGFyYW1zLT5pZGVudGlmaWVyKTsKIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9t
aXNlID0gcHJvbWlzZS5jb3B5UmVmKCldKEtleU9yS2V5UGFpciYmIGtleU9yS2V5UGFpcikgbXV0
YWJsZSB7Ci0gICAgICAgIFdURjo6c3dpdGNoT24oa2V5T3JLZXlQYWlyLAotICAgICAgICAgICAg
WyZjYXB0dXJlZFByb21pc2VdIChSZWZQdHI8Q3J5cHRvS2V5PiYga2V5KSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKChrZXktPnR5cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS0+
dHlwZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3JldCkgJiYgIWtleS0+dXNhZ2VzQml0bWFwKCkp
IHsKLSAgICAgICAgICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1
cmVkUHJvbWlzZSksIFN5bnRheEVycm9yKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwor
ICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigpOworICAgIG1fcGVuZGluZ1Byb21pc2VzLmFk
ZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7CisgICAgYXV0byBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigqdGhpcyk7CisgICAgYXV0byBj
YWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEtleU9yS2V5UGFpciYm
IGtleU9yS2V5UGFpcikgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQ
cm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAgICAgICAgIFdU
Rjo6c3dpdGNoT24oa2V5T3JLZXlQYWlyLAorICAgICAgICAgICAgICAgIFsmcHJvbWlzZV0gKFJl
ZlB0cjxDcnlwdG9LZXk+JiBrZXkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKChrZXktPnR5
cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS0+dHlwZSgpID09IENyeXB0b0tl
eVR5cGU6OlNlY3JldCkgJiYgIWtleS0+dXNhZ2VzQml0bWFwKCkpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24ocHJvbWlzZS5yZWxlYXNlTm9uTnVsbCgpLCBT
eW50YXhFcnJvcik7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZTxJRExJbnRl
cmZhY2U8Q3J5cHRvS2V5Pj4oKmtleSk7CisgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAg
ICAgICBbJnByb21pc2VdIChDcnlwdG9LZXlQYWlyJiBrZXlQYWlyKSB7CisgICAgICAgICAgICAg
ICAgICAgIGlmICgha2V5UGFpci5wcml2YXRlS2V5LT51c2FnZXNCaXRtYXAoKSkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25O
dWxsKCksIFN5bnRheEVycm9yKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBwcm9taXNlLT5yZXNvbHZl
PElETERpY3Rpb25hcnk8Q3J5cHRvS2V5UGFpcj4+KGtleVBhaXIpOwogICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICBjYXB0dXJlZFByb21pc2UtPnJlc29sdmU8SURMSW50ZXJmYWNl
PENyeXB0b0tleT4+KCprZXkpOwotICAgICAgICAgICAgfSwKLSAgICAgICAgICAgIFsmY2FwdHVy
ZWRQcm9taXNlXSAoQ3J5cHRvS2V5UGFpciYga2V5UGFpcikgewotICAgICAgICAgICAgICAgIGlm
ICgha2V5UGFpci5wcml2YXRlS2V5LT51c2FnZXNCaXRtYXAoKSkgewotICAgICAgICAgICAgICAg
ICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgU3ludGF4
RXJyb3IpOwotICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgIGNhcHR1cmVkUHJvbWlzZS0+cmVzb2x2ZTxJRExEaWN0aW9uYXJ5PENy
eXB0b0tleVBhaXI+PihrZXlQYWlyKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgKTsKKyAgICAg
ICAgICAgICk7CisgICAgICAgIH0KICAgICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sg
PSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykg
bXV0YWJsZSB7Ci0gICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFBy
b21pc2UpLCBlYyk7CisgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxl
Q3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBp
ZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXIpKQorICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25O
dWxsKCksIGVjKTsKICAgICB9OwogCiAgICAgLy8gVGhlIDI2IEphbnVhcnkgMjAxNyB2ZXJzaW9u
IG9mIHRoZSBzcGVjaWZpY2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBwZXJmb3JtIHRoZSBmb2xs
b3dpbmcgdGFzayBhc3luY2hyb25vdXNseQpAQCAtNzU1LDI0ICs3OTQsMzEgQEAgdm9pZCBTdWJ0
bGVDcnlwdG86OmRlcml2ZUtleShKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEFsZ29yaXRobUlkZW50
aWZpZXImJiBhbGdvcmkKICAgICBhdXRvIGltcG9ydEFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRo
bVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUoaW1wb3J0UGFyYW1zLT5pZGVudGlmaWVyKTsK
ICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5OjpzaW5nbGV0b24o
KS5jcmVhdGUocGFyYW1zLT5pZGVudGlmaWVyKTsKIAotICAgIGF1dG8gY2FsbGJhY2sgPSBbcHJv
bWlzZSA9IHByb21pc2UuY29weVJlZigpLCBpbXBvcnRBbGdvcml0aG0sIGltcG9ydFBhcmFtcyA9
IFdURk1vdmUoaW1wb3J0UGFyYW1zKSwgZXh0cmFjdGFibGUsIGtleVVzYWdlc0JpdG1hcF0oY29u
c3QgVmVjdG9yPHVpbnQ4X3Q+JiBkZXJpdmVkS2V5KSBtdXRhYmxlIHsKKyAgICBhdXRvIGluZGV4
ID0gcHJvbWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1v
dmUocHJvbWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQ
dHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5k
ZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyLCBpbXBvcnRBbGdvcml0aG0sIGltcG9ydFBhcmFt
cyA9IFdURk1vdmUoaW1wb3J0UGFyYW1zKSwgZXh0cmFjdGFibGUsIGtleVVzYWdlc0JpdG1hcF0o
Y29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBkZXJpdmVkS2V5KSBtdXRhYmxlIHsKICAgICAgICAgLy8g
RklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkzOTUKICAg
ICAgICAgS2V5RGF0YSBkYXRhID0gZGVyaXZlZEtleTsKLSAgICAgICAgYXV0byBjYWxsYmFjayA9
IFtjYXB0dXJlZFByb21pc2UgPSBwcm9taXNlLmNvcHlSZWYoKV0oQ3J5cHRvS2V5JiBrZXkpIG11
dGFibGUgewotICAgICAgICAgICAgaWYgKChrZXkudHlwZSgpID09IENyeXB0b0tleVR5cGU6OlBy
aXZhdGUgfHwga2V5LnR5cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpTZWNyZXQpICYmICFrZXkudXNh
Z2VzQml0bWFwKCkpIHsKLSAgICAgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1v
dmUoY2FwdHVyZWRQcm9taXNlKSwgU3ludGF4RXJyb3IpOwotICAgICAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXJdKENyeXB0b0tleSYga2V5KSBtdXRhYmxlIHsKKyAgICAgICAgICAgIGlmIChhdXRvIHByb21p
c2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAg
ICAgICAgICAgICBpZiAoKGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5VHlwZTo6UHJpdmF0ZSB8fCBr
ZXkudHlwZSgpID09IENyeXB0b0tleVR5cGU6OlNlY3JldCkgJiYgIWtleS51c2FnZXNCaXRtYXAo
KSkgeworICAgICAgICAgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHByb21pc2UucmVs
ZWFzZU5vbk51bGwoKSwgU3ludGF4RXJyb3IpOworICAgICAgICAgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHByb21pc2UtPnJlc29sdmU8SURM
SW50ZXJmYWNlPENyeXB0b0tleT4+KGtleSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBj
YXB0dXJlZFByb21pc2UtPnJlc29sdmU8SURMSW50ZXJmYWNlPENyeXB0b0tleT4+KGtleSk7CiAg
ICAgICAgIH07Ci0gICAgICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9t
aXNlID0gV1RGTW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAg
ICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMp
OworICAgICAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9X
ZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgICAgICBpZiAo
YXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIp
KQorICAgICAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24ocHJvbWlzZS5yZWxlYXNlTm9u
TnVsbCgpLCBlYyk7CiAgICAgICAgIH07CiAKICAgICAgICAgaW1wb3J0QWxnb3JpdGhtLT5pbXBv
cnRLZXkoU3VidGxlQ3J5cHRvOjpLZXlGb3JtYXQ6OlJhdywgV1RGTW92ZShkYXRhKSwgV1RGTW92
ZShpbXBvcnRQYXJhbXMpLCBleHRyYWN0YWJsZSwga2V5VXNhZ2VzQml0bWFwLCBXVEZNb3ZlKGNh
bGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjaykpOwogICAgIH07Ci0gICAgYXV0byBl
eGNlcHRpb25DYWxsYmFjayA9IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShF
eGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihX
VEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNr
ID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0
YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0
bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHBy
b21pc2UucmVsZWFzZU5vbk51bGwoKSwgZWMpOwogICAgIH07CiAKICAgICBhbGdvcml0aG0tPmRl
cml2ZUJpdHMoV1RGTW92ZShwYXJhbXMpLCBiYXNlS2V5LCBsZW5ndGgsIFdURk1vdmUoY2FsbGJh
Y2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNrKSwgKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSwgbV93b3JrUXVldWUpOwpAQCAtNzk5LDExICs4NDUsMTYgQEAgdm9pZCBTdWJ0bGVDcnlwdG86
OmRlcml2ZUJpdHMoSlNDOjpFeGVjU3RhdGUmIHN0YXRlLCBBbGdvcml0aG1JZGVudGlmaWVyJiYg
YWxnb3IKIAogICAgIGF1dG8gYWxnb3JpdGhtID0gQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnk6OnNp
bmdsZXRvbigpLmNyZWF0ZShwYXJhbXMtPmlkZW50aWZpZXIpOwogCi0gICAgYXV0byBjYWxsYmFj
ayA9IFtjYXB0dXJlZFByb21pc2UgPSBwcm9taXNlLmNvcHlSZWYoKV0oY29uc3QgVmVjdG9yPHVp
bnQ4X3Q+JiBkZXJpdmVkS2V5KSBtdXRhYmxlIHsKLSAgICAgICAgZnVsZmlsbFByb21pc2VXaXRo
QXJyYXlCdWZmZXIoV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBkZXJpdmVkS2V5LmRhdGEoKSwg
ZGVyaXZlZEtleS5zaXplKCkpOworICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigpOworICAg
IG1fcGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7CisgICAgYXV0
byBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0
cigqdGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1Bv
aW50ZXJdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgZGVyaXZlZEtleSkgbXV0YWJsZSB7CisgICAg
ICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFr
UG9pbnRlcikpCisgICAgICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihwcm9t
aXNlLnJlbGVhc2VOb25OdWxsKCksIGRlcml2ZWRLZXkuZGF0YSgpLCBkZXJpdmVkS2V5LnNpemUo
KSk7CiAgICAgfTsKLSAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlz
ZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFibGUgewotICAgICAg
ICByZWplY3RXaXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgZWMpOworICAg
IGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVy
XShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9
IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkKKyAgICAgICAgICAg
IHJlamVjdFdpdGhFeGNlcHRpb24ocHJvbWlzZS5yZWxlYXNlTm9uTnVsbCgpLCBlYyk7CiAgICAg
fTsKIAogICAgIGFsZ29yaXRobS0+ZGVyaXZlQml0cyhXVEZNb3ZlKHBhcmFtcyksIGJhc2VLZXks
IGxlbmd0aCwgV1RGTW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2spLCAq
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBtX3dvcmtRdWV1ZSk7CkBAIC04MjksMTUgKzg4MCwy
MSBAQCB2b2lkIFN1YnRsZUNyeXB0bzo6aW1wb3J0S2V5KEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwg
S2V5Rm9ybWF0IGZvcm1hdCwgS2V5RGF0YVZhcgogCiAgICAgYXV0byBhbGdvcml0aG0gPSBDcnlw
dG9BbGdvcml0aG1SZWdpc3RyeTo6c2luZ2xldG9uKCkuY3JlYXRlKHBhcmFtcy0+aWRlbnRpZmll
cik7CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29w
eVJlZigpXShDcnlwdG9LZXkmIGtleSkgbXV0YWJsZSB7Ci0gICAgICAgIGlmICgoa2V5LnR5cGUo
KSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5VHlw
ZTo6U2VjcmV0KSAmJiAha2V5LnVzYWdlc0JpdG1hcCgpKSB7Ci0gICAgICAgICAgICByZWplY3RX
aXRoRXhjZXB0aW9uKFdURk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgU3ludGF4RXJyb3IpOwotICAg
ICAgICAgICAgcmV0dXJuOworICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigpOworICAgIG1f
cGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7CisgICAgYXV0byBz
dWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigq
dGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50
ZXJdKENyeXB0b0tleSYga2V5KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGF1dG8gcHJvbWlzZSA9
IGdldFByb21pc2UoaW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyKSkgeworICAgICAgICAg
ICAgaWYgKChrZXkudHlwZSgpID09IENyeXB0b0tleVR5cGU6OlByaXZhdGUgfHwga2V5LnR5cGUo
KSA9PSBDcnlwdG9LZXlUeXBlOjpTZWNyZXQpICYmICFrZXkudXNhZ2VzQml0bWFwKCkpIHsKKyAg
ICAgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHByb21pc2UucmVsZWFzZU5vbk51bGwo
KSwgU3ludGF4RXJyb3IpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIHByb21pc2UtPnJlc29sdmU8SURMSW50ZXJmYWNlPENyeXB0b0tleT4+KGtl
eSk7CiAgICAgICAgIH0KLSAgICAgICAgY2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElETEludGVy
ZmFjZTxDcnlwdG9LZXk+PihrZXkpOwogICAgIH07Ci0gICAgYXV0byBleGNlcHRpb25DYWxsYmFj
ayA9IFtjYXB0dXJlZFByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVj
KSBtdXRhYmxlIHsKLSAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVk
UHJvbWlzZSksIGVjKTsKKyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0
bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAg
IGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlcikpCisgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHByb21pc2UucmVsZWFzZU5v
bk51bGwoKSwgZWMpOwogICAgIH07CiAKICAgICAvLyBUaGUgMTEgRGVjZW1iZXIgMjAxNCB2ZXJz
aW9uIG9mIHRoZSBzcGVjaWZpY2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBwZXJmb3JtIHRoZSBm
b2xsb3dpbmcgdGFzayBhc3luY2hyb25vdXNseToKQEAgLTg2MCwyMyArOTE3LDI5IEBAIHZvaWQg
U3VidGxlQ3J5cHRvOjpleHBvcnRLZXkoS2V5Rm9ybWF0IGZvcm1hdCwgQ3J5cHRvS2V5JiBrZXks
IFJlZjxEZWZlcnJlZFByb21pCiAKICAgICBhdXRvIGFsZ29yaXRobSA9IENyeXB0b0FsZ29yaXRo
bVJlZ2lzdHJ5OjpzaW5nbGV0b24oKS5jcmVhdGUoa2V5LmFsZ29yaXRobUlkZW50aWZpZXIoKSk7
CiAKLSAgICBhdXRvIGNhbGxiYWNrID0gW2NhcHR1cmVkUHJvbWlzZSA9IHByb21pc2UuY29weVJl
ZigpXShTdWJ0bGVDcnlwdG86OktleUZvcm1hdCBmb3JtYXQsIEtleURhdGEmJiBrZXkpIG11dGFi
bGUgewotICAgICAgICBzd2l0Y2ggKGZvcm1hdCkgewotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0
bzo6S2V5Rm9ybWF0OjpTcGtpOgotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0
OjpQa2NzODoKLSAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UmF3OiB7Ci0g
ICAgICAgICAgICBWZWN0b3I8dWludDhfdD4mIHJhd0tleSA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50
OF90Pj4oa2V5KTsKLSAgICAgICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdU
Rk1vdmUoY2FwdHVyZWRQcm9taXNlKSwgcmF3S2V5LmRhdGEoKSwgcmF3S2V5LnNpemUoKSk7Ci0g
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86
OktleUZvcm1hdDo6SndrOgotICAgICAgICAgICAgY2FwdHVyZWRQcm9taXNlLT5yZXNvbHZlPElE
TERpY3Rpb25hcnk8SnNvbldlYktleT4+KFdURk1vdmUoV1RGOjpnZXQ8SnNvbldlYktleT4oa2V5
KSkpOwotICAgICAgICAgICAgcmV0dXJuOworICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigp
OworICAgIG1fcGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7Cisg
ICAgYXV0byBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRl
V2Vha1B0cigqdGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRv
V2Vha1BvaW50ZXJdKFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0IGZvcm1hdCwgS2V5RGF0YSYmIGtl
eSkgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4
LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAgICAgICAgIHN3aXRjaCAoZm9ybWF0
KSB7CisgICAgICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpTcGtpOgorICAg
ICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6UGtjczg6CisgICAgICAgICAg
ICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpSYXc6IHsKKyAgICAgICAgICAgICAgICBW
ZWN0b3I8dWludDhfdD4mIHJhd0tleSA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50OF90Pj4oa2V5KTsK
KyAgICAgICAgICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihwcm9taXNlLnJl
bGVhc2VOb25OdWxsKCksIHJhd0tleS5kYXRhKCksIHJhd0tleS5zaXplKCkpOworICAgICAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNhc2UgU3VidGxlQ3J5
cHRvOjpLZXlGb3JtYXQ6Okp3azoKKyAgICAgICAgICAgICAgICBwcm9taXNlLT5yZXNvbHZlPElE
TERpY3Rpb25hcnk8SnNvbldlYktleT4+KFdURk1vdmUoV1RGOjpnZXQ8SnNvbldlYktleT4oa2V5
KSkpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICB9Ci0gICAgICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOwogICAgIH07Ci0gICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtjYXB0dXJlZFBy
b21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVjKSBtdXRhYmxlIHsKLSAg
ICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKGNhcHR1cmVkUHJvbWlzZSksIGVjKTsK
KyAgICBhdXRvIGV4Y2VwdGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9p
bnRlcl0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgIGlmIChhdXRvIHByb21p
c2UgPSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAg
ICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHByb21pc2UucmVsZWFzZU5vbk51bGwoKSwgZWMpOwog
ICAgIH07CiAKICAgICAvLyBUaGUgMTEgRGVjZW1iZXIgMjAxNCB2ZXJzaW9uIG9mIHRoZSBzcGVj
aWZpY2F0aW9uIHN1Z2dlc3RzIHdlIHNob3VsZCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgdGFzayBh
c3luY2hyb25vdXNseToKQEAgLTkyOCw0MyArOTkxLDUyIEBAIHZvaWQgU3VidGxlQ3J5cHRvOjp3
cmFwS2V5KEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgS2V5Rm9ybWF0IGZvcm1hdCwgQ3J5cHRvS2V5
JiBrCiAKICAgICBhdXRvIGNvbnRleHQgPSBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CiAKLSAg
ICBhdXRvIGNhbGxiYWNrID0gW3Byb21pc2UgPSBwcm9taXNlLmNvcHlSZWYoKSwgd3JhcEFsZ29y
aXRobSwgd3JhcHBpbmdLZXkgPSBtYWtlUmVmKHdyYXBwaW5nS2V5KSwgd3JhcFBhcmFtcyA9IFdU
Rk1vdmUod3JhcFBhcmFtcyksIGlzRW5jcnlwdGlvbiwgY29udGV4dCwgd29ya1F1ZXVlID0gbV93
b3JrUXVldWUuY29weVJlZigpXShTdWJ0bGVDcnlwdG86OktleUZvcm1hdCBmb3JtYXQsIEtleURh
dGEmJiBrZXkpIG11dGFibGUgewotICAgICAgICBWZWN0b3I8dWludDhfdD4gYnl0ZXM7Ci0gICAg
ICAgIHN3aXRjaCAoZm9ybWF0KSB7Ci0gICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlGb3Jt
YXQ6OlNwa2k6Ci0gICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlGb3JtYXQ6OlBrY3M4Ogot
ICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpSYXc6Ci0gICAgICAgICAgICBi
eXRlcyA9IFdURjo6Z2V0PFZlY3Rvcjx1aW50OF90Pj4oa2V5KTsKLSAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpKd2s6IHsKLSAgICAgICAg
ICAgIC8vIEZJWE1FOiBDb252ZXJ0aW5nIHRvIEpTIGp1c3QgdG8gSlNPTi1TdHJpbmdpZnkgc2Vl
bXMgaW5lZmZpY2llbnQuIFdlIHNob3VsZCBmaW5kIGEgd2F5IHRvIGdvIGRpcmVjdGx5IGZyb20g
dGhlIHN0cnVjdCB0byBKU09OLgotICAgICAgICAgICAgYXV0byBqd2sgPSB0b0pTPElETERpY3Rp
b25hcnk8SnNvbldlYktleT4+KCoocHJvbWlzZS0+Z2xvYmFsT2JqZWN0KCktPmdsb2JhbEV4ZWMo
KSksICoocHJvbWlzZS0+Z2xvYmFsT2JqZWN0KCkpLCBXVEZNb3ZlKFdURjo6Z2V0PEpzb25XZWJL
ZXk+KGtleSkpKTsKLSAgICAgICAgICAgIFN0cmluZyBqd2tTdHJpbmcgPSBKU09OU3RyaW5naWZ5
KHByb21pc2UtPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCksIGp3aywgMCk7Ci0gICAgICAg
ICAgICBDU3RyaW5nIGp3a1V0ZjhTdHJpbmcgPSBqd2tTdHJpbmcudXRmOChTdHJpY3RDb252ZXJz
aW9uKTsKLSAgICAgICAgICAgIGJ5dGVzLmFwcGVuZChqd2tVdGY4U3RyaW5nLmRhdGEoKSwgandr
VXRmOFN0cmluZy5sZW5ndGgoKSk7Ci0gICAgICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIGF1
dG8gY2FsbGJhY2sgPSBbcHJvbWlzZSA9IHByb21pc2UuY29weVJlZigpXShjb25zdCBWZWN0b3I8
dWludDhfdD4mIHdyYXBwZWRLZXkpIG11dGFibGUgewotICAgICAgICAgICAgZnVsZmlsbFByb21p
c2VXaXRoQXJyYXlCdWZmZXIoV1RGTW92ZShwcm9taXNlKSwgd3JhcHBlZEtleS5kYXRhKCksIHdy
YXBwZWRLZXkuc2l6ZSgpKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfTsKLSAgICAg
ICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
RXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0
aW9uKFdURk1vdmUocHJvbWlzZSksIGVjKTsKLSAgICAgICAgfTsKKyAgICBhdXRvIGluZGV4ID0g
cHJvbWlzZS5wdHIoKTsKKyAgICBtX3BlbmRpbmdQcm9taXNlcy5hZGQoaW5kZXgsIFdURk1vdmUo
cHJvbWlzZSkpOworICAgIGF1dG8gc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIgPSBtX3dlYWtQdHJG
YWN0b3J5LmNyZWF0ZVdlYWtQdHIoKnRoaXMpOworICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5kZXgs
IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyLCB3cmFwQWxnb3JpdGhtLCB3cmFwcGluZ0tleSA9IG1h
a2VSZWYod3JhcHBpbmdLZXkpLCB3cmFwUGFyYW1zID0gV1RGTW92ZSh3cmFwUGFyYW1zKSwgaXNF
bmNyeXB0aW9uLCBjb250ZXh0LCB3b3JrUXVldWUgPSBtX3dvcmtRdWV1ZS5jb3B5UmVmKCldKFN1
YnRsZUNyeXB0bzo6S2V5Rm9ybWF0IGZvcm1hdCwgS2V5RGF0YSYmIGtleSkgbXV0YWJsZSB7Cisg
ICAgICAgIGlmIChzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikgeworICAgICAgICAgICAgaWYgKGF1
dG8gcHJvbWlzZSA9IHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyLT5tX3BlbmRpbmdQcm9taXNlcy5n
ZXQoaW5kZXgpKSB7CisgICAgICAgICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGJ5dGVzOworICAg
ICAgICAgICAgICAgIHN3aXRjaCAoZm9ybWF0KSB7CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0
bGVDcnlwdG86OktleUZvcm1hdDo6U3BraToKKyAgICAgICAgICAgICAgICBjYXNlIFN1YnRsZUNy
eXB0bzo6S2V5Rm9ybWF0OjpQa2NzODoKKyAgICAgICAgICAgICAgICBjYXNlIFN1YnRsZUNyeXB0
bzo6S2V5Rm9ybWF0OjpSYXc6CisgICAgICAgICAgICAgICAgICAgIGJ5dGVzID0gV1RGOjpnZXQ8
VmVjdG9yPHVpbnQ4X3Q+PihrZXkpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6S2V5Rm9ybWF0OjpKd2s6IHsKKyAgICAgICAg
ICAgICAgICAgICAgLy8gRklYTUU6IENvbnZlcnRpbmcgdG8gSlMganVzdCB0byBKU09OLVN0cmlu
Z2lmeSBzZWVtcyBpbmVmZmljaWVudC4gV2Ugc2hvdWxkIGZpbmQgYSB3YXkgdG8gZ28gZGlyZWN0
bHkgZnJvbSB0aGUgc3RydWN0IHRvIEpTT04uCisgICAgICAgICAgICAgICAgICAgIGF1dG8gandr
ID0gdG9KUzxJRExEaWN0aW9uYXJ5PEpzb25XZWJLZXk+PigqKHByb21pc2UtPmdsb2JhbE9iamVj
dCgpLT5nbG9iYWxFeGVjKCkpLCAqKHByb21pc2UtPmdsb2JhbE9iamVjdCgpKSwgV1RGTW92ZShX
VEY6OmdldDxKc29uV2ViS2V5PihrZXkpKSk7CisgICAgICAgICAgICAgICAgICAgIFN0cmluZyBq
d2tTdHJpbmcgPSBKU09OU3RyaW5naWZ5KHByb21pc2UtPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxF
eGVjKCksIGp3aywgMCk7CisgICAgICAgICAgICAgICAgICAgIENTdHJpbmcgandrVXRmOFN0cmlu
ZyA9IGp3a1N0cmluZy51dGY4KFN0cmljdENvbnZlcnNpb24pOworICAgICAgICAgICAgICAgICAg
ICBieXRlcy5hcHBlbmQoandrVXRmOFN0cmluZy5kYXRhKCksIGp3a1V0ZjhTdHJpbmcubGVuZ3Ro
KCkpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9CiAKLSAgICAgICAgaWYg
KCFpc0VuY3J5cHRpb24pIHsKLSAgICAgICAgICAgIC8vIFRoZSAxMSBEZWNlbWJlciAyMDE0IHZl
cnNpb24gb2YgdGhlIHNwZWNpZmljYXRpb24gc3VnZ2VzdHMgd2Ugc2hvdWxkIHBlcmZvcm0gdGhl
IGZvbGxvd2luZyB0YXNrIGFzeW5jaHJvbm91c2x5OgotICAgICAgICAgICAgLy8gaHR0cHM6Ly93
d3cudzMub3JnL1RSL1dlYkNyeXB0b0FQSS8jU3VidGxlQ3J5cHRvLW1ldGhvZC13cmFwS2V5Ci0g
ICAgICAgICAgICAvLyBJdCBpcyBub3QgYmVuZWZpY2lhbCBmb3IgbGVzcyB0aW1lIGNvbnN1bWlu
ZyBvcGVyYXRpb25zLiBUaGVyZWZvcmUsIHdlIHBlcmZvcm0gaXQgc3luY2hyb25vdXNseS4KLSAg
ICAgICAgICAgIHdyYXBBbGdvcml0aG0tPndyYXBLZXkod3JhcHBpbmdLZXkuZ2V0KCksIFdURk1v
dmUoYnl0ZXMpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShleGNlcHRpb25DYWxsYmFjaykp
OwotICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAgIGF1dG8gY2FsbGJhY2sgPSBb
aW5kZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShjb25zdCBWZWN0b3I8dWludDhfdD4mIHdy
YXBwZWRLZXkpIG11dGFibGUgeworICAgICAgICAgICAgICAgICAgICBpZiAoYXV0byBwcm9taXNl
ID0gZ2V0UHJvbWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAg
ICAgICAgICAgICAgICAgZnVsZmlsbFByb21pc2VXaXRoQXJyYXlCdWZmZXIocHJvbWlzZS5yZWxl
YXNlTm9uTnVsbCgpLCB3cmFwcGVkS2V5LmRhdGEoKSwgd3JhcHBlZEtleS5zaXplKCkpOworICAg
ICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgYXV0byBleGNlcHRpb25DYWxsYmFjayA9
IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlvbkNvZGUgZWMpIG11dGFi
bGUgeworICAgICAgICAgICAgICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlzZShp
bmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgICAgICAgICAgICAg
cmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25OdWxsKCksIGVjKTsKKyAgICAg
ICAgICAgICAgICB9OworCisgICAgICAgICAgICAgICAgaWYgKCFpc0VuY3J5cHRpb24pIHsKKyAg
ICAgICAgICAgICAgICAgICAgLy8gVGhlIDExIERlY2VtYmVyIDIwMTQgdmVyc2lvbiBvZiB0aGUg
c3BlY2lmaWNhdGlvbiBzdWdnZXN0cyB3ZSBzaG91bGQgcGVyZm9ybSB0aGUgZm9sbG93aW5nIHRh
c2sgYXN5bmNocm9ub3VzbHk6CisgICAgICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vd3d3Lncz
Lm9yZy9UUi9XZWJDcnlwdG9BUEkvI1N1YnRsZUNyeXB0by1tZXRob2Qtd3JhcEtleQorICAgICAg
ICAgICAgICAgICAgICAvLyBJdCBpcyBub3QgYmVuZWZpY2lhbCBmb3IgbGVzcyB0aW1lIGNvbnN1
bWluZyBvcGVyYXRpb25zLiBUaGVyZWZvcmUsIHdlIHBlcmZvcm0gaXQgc3luY2hyb25vdXNseS4K
KyAgICAgICAgICAgICAgICAgICAgd3JhcEFsZ29yaXRobS0+d3JhcEtleSh3cmFwcGluZ0tleS5n
ZXQoKSwgV1RGTW92ZShieXRlcyksIFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlv
bkNhbGxiYWNrKSk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBvcGVyYXRpb24gc2hvdWxkIGJl
IHBlcmZvcm1lZCBhc3luY2hyb25vdXNseS4KKyAgICAgICAgICAgICAgICB3cmFwQWxnb3JpdGht
LT5lbmNyeXB0KFdURk1vdmUod3JhcFBhcmFtcyksIFdURk1vdmUod3JhcHBpbmdLZXkpLCBXVEZN
b3ZlKGJ5dGVzKSwgV1RGTW92ZShjYWxsYmFjayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2sp
LCAqY29udGV4dCwgd29ya1F1ZXVlKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAg
ICAvLyBUaGUgZm9sbG93aW5nIG9wZXJhdGlvbiBzaG91bGQgYmUgcGVyZm9ybWVkIGFzeW5jaHJv
bm91c2x5LgotICAgICAgICB3cmFwQWxnb3JpdGhtLT5lbmNyeXB0KFdURk1vdmUod3JhcFBhcmFt
cyksIFdURk1vdmUod3JhcHBpbmdLZXkpLCBXVEZNb3ZlKGJ5dGVzKSwgV1RGTW92ZShjYWxsYmFj
ayksIFdURk1vdmUoZXhjZXB0aW9uQ2FsbGJhY2spLCAqY29udGV4dCwgd29ya1F1ZXVlKTsKICAg
ICB9OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAgICAgIHJlamVj
dFdpdGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBlYyk7CisgICAgYXV0byBl
eGNlcHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2Vw
dGlvbkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJv
bWlzZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgcmVqZWN0
V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25OdWxsKCksIGVjKTsKICAgICB9OwogCiAg
ICAgLy8gVGhlIGZvbGxvd2luZyBvcGVyYXRpb24gc2hvdWxkIGJlIHBlcmZvcm1lZCBzeW5jaHJv
bm91c2x5LgpAQCAtMTAyMiw1MSArMTA5NCw2MiBAQCB2b2lkIFN1YnRsZUNyeXB0bzo6dW53cmFw
S2V5KEpTQzo6RXhlY1N0YXRlJiBzdGF0ZSwgS2V5Rm9ybWF0IGZvcm1hdCwgQnVmZmVyU291cgog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgYXV0byBjYWxsYmFjayA9IFtwcm9taXNlID0g
cHJvbWlzZS5jb3B5UmVmKCksIGZvcm1hdCwgaW1wb3J0QWxnb3JpdGhtLCB1bndyYXBwZWRLZXlB
bGdvcml0aG0gPSBXVEZNb3ZlKHVud3JhcHBlZEtleUFsZ29yaXRobSksIGV4dHJhY3RhYmxlLCBr
ZXlVc2FnZXNCaXRtYXBdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgYnl0ZXMpIG11dGFibGUgewot
ICAgICAgICBLZXlEYXRhIGtleURhdGE7Ci0gICAgICAgIHN3aXRjaCAoZm9ybWF0KSB7Ci0gICAg
ICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlGb3JtYXQ6OlNwa2k6Ci0gICAgICAgIGNhc2UgU3Vi
dGxlQ3J5cHRvOjpLZXlGb3JtYXQ6OlBrY3M4OgotICAgICAgICBjYXNlIFN1YnRsZUNyeXB0bzo6
S2V5Rm9ybWF0OjpSYXc6Ci0gICAgICAgICAgICBrZXlEYXRhID0gYnl0ZXM7Ci0gICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1hdDo6SndrOiB7Ci0g
ICAgICAgICAgICBhdXRvJiBzdGF0ZSA9ICoocHJvbWlzZS0+Z2xvYmFsT2JqZWN0KCktPmdsb2Jh
bEV4ZWMoKSk7Ci0gICAgICAgICAgICBhdXRvJiB2bSA9IHN0YXRlLnZtKCk7Ci0gICAgICAgICAg
ICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0KLSAgICAgICAgICAgIFN0
cmluZyBqd2tTdHJpbmcocmVpbnRlcnByZXRfY2FzdF9wdHI8Y29uc3QgY2hhcio+KGJ5dGVzLmRh
dGEoKSksIGJ5dGVzLnNpemUoKSk7Ci0gICAgICAgICAgICBKU0xvY2tIb2xkZXIgbG9ja2VyKHZt
KTsKLSAgICAgICAgICAgIGF1dG8gandrT2JqZWN0ID0gSlNPTlBhcnNlKCZzdGF0ZSwgandrU3Ry
aW5nKTsKLSAgICAgICAgICAgIGlmICghandrT2JqZWN0KSB7Ci0gICAgICAgICAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KERhdGFFcnJvciwgQVNDSUlMaXRlcmFsKCJXcmFwcGVkS2V5IGNhbm5vdCBi
ZSBjb252ZXJ0ZWQgdG8gYSBKU09OIG9iamVjdCIpKTsKLSAgICAgICAgICAgICAgICByZXR1cm47
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBhdXRvIGp3ayA9IGNvbnZlcnQ8SURMRGljdGlv
bmFyeTxKc29uV2ViS2V5Pj4oc3RhdGUsIGp3a09iamVjdCk7Ci0gICAgICAgICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwotICAgICAgICAgICAgbm9ybWFsaXplSnNvbldl
YktleShqd2spOwotCi0gICAgICAgICAgICBrZXlEYXRhID0gandrOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIH0KLSAgICAgICAgfQorICAgIGF1dG8gaW5kZXggPSBwcm9taXNlLnB0cigp
OworICAgIG1fcGVuZGluZ1Byb21pc2VzLmFkZChpbmRleCwgV1RGTW92ZShwcm9taXNlKSk7Cisg
ICAgYXV0byBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlciA9IG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRl
V2Vha1B0cigqdGhpcyk7CisgICAgYXV0byBjYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRv
V2Vha1BvaW50ZXIsIGZvcm1hdCwgaW1wb3J0QWxnb3JpdGhtLCB1bndyYXBwZWRLZXlBbGdvcml0
aG0gPSBXVEZNb3ZlKHVud3JhcHBlZEtleUFsZ29yaXRobSksIGV4dHJhY3RhYmxlLCBrZXlVc2Fn
ZXNCaXRtYXBdKGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgYnl0ZXMpIG11dGFibGUgeworICAgICAg
ICBpZiAoc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpIHsKKyAgICAgICAgICAgIGlmIChhdXRvIHBy
b21pc2UgPSBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlci0+bV9wZW5kaW5nUHJvbWlzZXMuZ2V0KGlu
ZGV4KSkgeworICAgICAgICAgICAgICAgIEtleURhdGEga2V5RGF0YTsKKyAgICAgICAgICAgICAg
ICBzd2l0Y2ggKGZvcm1hdCkgeworICAgICAgICAgICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpL
ZXlGb3JtYXQ6OlNwa2k6CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZv
cm1hdDo6UGtjczg6CisgICAgICAgICAgICAgICAgY2FzZSBTdWJ0bGVDcnlwdG86OktleUZvcm1h
dDo6UmF3OgorICAgICAgICAgICAgICAgICAgICBrZXlEYXRhID0gYnl0ZXM7CisgICAgICAgICAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgU3VidGxlQ3J5cHRvOjpLZXlG
b3JtYXQ6Okp3azogeworICAgICAgICAgICAgICAgICAgICBhdXRvJiBzdGF0ZSA9ICoocHJvbWlz
ZS0+Z2xvYmFsT2JqZWN0KCktPmdsb2JhbEV4ZWMoKSk7CisgICAgICAgICAgICAgICAgICAgIGF1
dG8mIHZtID0gc3RhdGUudm0oKTsKKyAgICAgICAgICAgICAgICAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOworCisgICAgICAgICAgICAgICAgICAgIFN0cmluZyBqd2tT
dHJpbmcocmVpbnRlcnByZXRfY2FzdF9wdHI8Y29uc3QgY2hhcio+KGJ5dGVzLmRhdGEoKSksIGJ5
dGVzLnNpemUoKSk7CisgICAgICAgICAgICAgICAgICAgIEpTTG9ja0hvbGRlciBsb2NrZXIodm0p
OworICAgICAgICAgICAgICAgICAgICBhdXRvIGp3a09iamVjdCA9IEpTT05QYXJzZSgmc3RhdGUs
IGp3a1N0cmluZyk7CisgICAgICAgICAgICAgICAgICAgIGlmICghandrT2JqZWN0KSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBwcm9taXNlLT5yZWplY3QoRGF0YUVycm9yLCBBU0NJSUxpdGVy
YWwoIldyYXBwZWRLZXkgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIEpTT04gb2JqZWN0IikpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgICAgIGF1dG8gandrID0gY29udmVydDxJRExEaWN0aW9uYXJ5PEpzb25X
ZWJLZXk+PihzdGF0ZSwgandrT2JqZWN0KTsKKyAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKKyAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXpl
SnNvbldlYktleShqd2spOworCisgICAgICAgICAgICAgICAgICAgIGtleURhdGEgPSBqd2s7Cisg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICB9CiAKLSAgICAgICAgYXV0byBjYWxsYmFjayA9IFtwcm9taXNlID0gcHJvbWlzZS5jb3B5
UmVmKCldKENyeXB0b0tleSYga2V5KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIGlmICgoa2V5LnR5
cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS50eXBlKCkgPT0gQ3J5cHRvS2V5
VHlwZTo6U2VjcmV0KSAmJiAha2V5LnVzYWdlc0JpdG1hcCgpKSB7Ci0gICAgICAgICAgICAgICAg
cmVqZWN0V2l0aEV4Y2VwdGlvbihXVEZNb3ZlKHByb21pc2UpLCBTeW50YXhFcnJvcik7Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAgIGF1dG8gY2FsbGJhY2sgPSBbaW5k
ZXgsIHN1YnRsZUNyeXB0b1dlYWtQb2ludGVyXShDcnlwdG9LZXkmIGtleSkgbXV0YWJsZSB7Cisg
ICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHByb21pc2UgPSBnZXRQcm9taXNlKGluZGV4LCBz
dWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICgo
a2V5LnR5cGUoKSA9PSBDcnlwdG9LZXlUeXBlOjpQcml2YXRlIHx8IGtleS50eXBlKCkgPT0gQ3J5
cHRvS2V5VHlwZTo6U2VjcmV0KSAmJiAha2V5LnVzYWdlc0JpdG1hcCgpKSB7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmVqZWN0V2l0aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25O
dWxsKCksIFN5bnRheEVycm9yKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBwcm9t
aXNlLT5yZXNvbHZlPElETEludGVyZmFjZTxDcnlwdG9LZXk+PihrZXkpOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICBhdXRvIGV4Y2Vw
dGlvbkNhbGxiYWNrID0gW2luZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcl0oRXhjZXB0aW9u
Q29kZSBlYykgbXV0YWJsZSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvIHByb21pc2Ug
PSBnZXRQcm9taXNlKGluZGV4LCBzdWJ0bGVDcnlwdG9XZWFrUG9pbnRlcikpCisgICAgICAgICAg
ICAgICAgICAgICAgICByZWplY3RXaXRoRXhjZXB0aW9uKHByb21pc2UucmVsZWFzZU5vbk51bGwo
KSwgZWMpOworICAgICAgICAgICAgICAgIH07CisKKyAgICAgICAgICAgICAgICAvLyBUaGUgZm9s
bG93aW5nIG9wZXJhdGlvbiBzaG91bGQgYmUgcGVyZm9ybWVkIHN5bmNocm9ub3VzbHkuCisgICAg
ICAgICAgICAgICAgaW1wb3J0QWxnb3JpdGhtLT5pbXBvcnRLZXkoZm9ybWF0LCBXVEZNb3ZlKGtl
eURhdGEpLCBXVEZNb3ZlKHVud3JhcHBlZEtleUFsZ29yaXRobSksIGV4dHJhY3RhYmxlLCBrZXlV
c2FnZXNCaXRtYXAsIFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNr
KSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwcm9taXNlLT5yZXNvbHZlPElETEludGVy
ZmFjZTxDcnlwdG9LZXk+PihrZXkpOwotICAgICAgICB9OwotICAgICAgICBhdXRvIGV4Y2VwdGlv
bkNhbGxiYWNrID0gW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShFeGNlcHRpb25Db2RlIGVj
KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIHJlamVjdFdpdGhFeGNlcHRpb24oV1RGTW92ZShwcm9t
aXNlKSwgZWMpOwotICAgICAgICB9OwotCi0gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgb3BlcmF0
aW9uIHNob3VsZCBiZSBwZXJmb3JtZWQgc3luY2hyb25vdXNseS4KLSAgICAgICAgaW1wb3J0QWxn
b3JpdGhtLT5pbXBvcnRLZXkoZm9ybWF0LCBXVEZNb3ZlKGtleURhdGEpLCBXVEZNb3ZlKHVud3Jh
cHBlZEtleUFsZ29yaXRobSksIGV4dHJhY3RhYmxlLCBrZXlVc2FnZXNCaXRtYXAsIFdURk1vdmUo
Y2FsbGJhY2spLCBXVEZNb3ZlKGV4Y2VwdGlvbkNhbGxiYWNrKSk7CisgICAgICAgIH0KICAgICB9
OwotICAgIGF1dG8gZXhjZXB0aW9uQ2FsbGJhY2sgPSBbY2FwdHVyZWRQcm9taXNlID0gV1RGTW92
ZShwcm9taXNlKV0oRXhjZXB0aW9uQ29kZSBlYykgbXV0YWJsZSB7Ci0gICAgICAgIHJlamVjdFdp
dGhFeGNlcHRpb24oV1RGTW92ZShjYXB0dXJlZFByb21pc2UpLCBlYyk7CisgICAgYXV0byBleGNl
cHRpb25DYWxsYmFjayA9IFtpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXJdKEV4Y2VwdGlv
bkNvZGUgZWMpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byBwcm9taXNlID0gZ2V0UHJvbWlz
ZShpbmRleCwgc3VidGxlQ3J5cHRvV2Vha1BvaW50ZXIpKQorICAgICAgICAgICAgcmVqZWN0V2l0
aEV4Y2VwdGlvbihwcm9taXNlLnJlbGVhc2VOb25OdWxsKCksIGVjKTsKICAgICB9OwogCiAgICAg
aWYgKCFpc0RlY3J5cHRpb24pIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9T
dWJ0bGVDcnlwdG8uaCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9TdWJ0bGVDcnlwdG8uaAppbmRl
eCA4M2VkMjM1NzJiZGI3YmNmZmQ4NDM5MjA5ZDIxMTY5MjkzMzkwYzY2Li5lZGZhZTc2YmFkZTUx
YWE5ZWNkNWQ2NmM4NTE3NjdjOWYwMmNlNmZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
cnlwdG8vU3VidGxlQ3J5cHRvLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL1N1YnRsZUNy
eXB0by5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1ZhcmlhbnQuaD4KKyNpbmNsdWRlIDx3
dGYvV2Vha1B0ci5oPgogI2luY2x1ZGUgPHd0Zi9Xb3JrUXVldWUuaD4KIAogbmFtZXNwYWNlIEpT
QyB7CkBAIC03NSw5ICs3NiwxMyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1bndyYXBLZXkoSlNDOjpF
eGVjU3RhdGUmLCBLZXlGb3JtYXQsIEJ1ZmZlclNvdXJjZSYmIHdyYXBwZWRLZXksIENyeXB0b0tl
eSYgdW53cmFwcGluZ0tleSwgQWxnb3JpdGhtSWRlbnRpZmllciYmIHVud3JhcEFsZ29yaXRobSwg
QWxnb3JpdGhtSWRlbnRpZmllciYmIHVud3JhcHBlZEtleUFsZ29yaXRobSwgYm9vbCBleHRyYWN0
YWJsZSwgVmVjdG9yPENyeXB0b0tleVVzYWdlPiYmLCBSZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsK
IAogcHJpdmF0ZToKLSAgICBTdWJ0bGVDcnlwdG8oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpOwor
ICAgIGV4cGxpY2l0IFN1YnRsZUNyeXB0byhTY3JpcHRFeGVjdXRpb25Db250ZXh0Jik7CisKKyAg
ICBpbmxpbmUgZnJpZW5kIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+IGdldFByb21pc2UoRGVmZXJy
ZWRQcm9taXNlKiwgV2Vha1B0cjxTdWJ0bGVDcnlwdG8+KTsKIAogICAgIFJlZjxXb3JrUXVldWU+
IG1fd29ya1F1ZXVlOworICAgIEhhc2hNYXA8RGVmZXJyZWRQcm9taXNlKiwgUmVmPERlZmVycmVk
UHJvbWlzZT4+IG1fcGVuZGluZ1Byb21pc2VzOworICAgIFdlYWtQdHJGYWN0b3J5PFN1YnRsZUNy
eXB0bz4gbV93ZWFrUHRyRmFjdG9yeTsKIH07CiAKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>