<?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>230484</bug_id>
          
          <creation_ts>2021-09-20 10:04:05 -0700</creation_ts>
          <short_desc>Add initial support for File System Access API</short_desc>
          <delta_ts>2021-10-13 18:39:40 -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>
          
          
          <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>
          
          <blocked>231706</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sihui Liu">sihui_liu</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1795130</commentid>
    <comment_count>0</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 10:04:05 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795174</commentid>
    <comment_count>1</comment_count>
      <attachid>438700</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 11:13:45 -0700</bug_when>
    <thetext>Created attachment 438700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795268</commentid>
    <comment_count>2</comment_count>
      <attachid>438725</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 13:57:00 -0700</bug_when>
    <thetext>Created attachment 438725
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795311</commentid>
    <comment_count>3</comment_count>
      <attachid>438737</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 15:11:54 -0700</bug_when>
    <thetext>Created attachment 438737
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795322</commentid>
    <comment_count>4</comment_count>
      <attachid>438743</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 15:51:51 -0700</bug_when>
    <thetext>Created attachment 438743
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795343</commentid>
    <comment_count>5</comment_count>
      <attachid>438750</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 16:28:31 -0700</bug_when>
    <thetext>Created attachment 438750
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795374</commentid>
    <comment_count>6</comment_count>
      <attachid>438760</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 17:42:41 -0700</bug_when>
    <thetext>Created attachment 438760
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795416</commentid>
    <comment_count>7</comment_count>
      <attachid>438779</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 23:17:45 -0700</bug_when>
    <thetext>Created attachment 438779
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795423</commentid>
    <comment_count>8</comment_count>
      <attachid>438783</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-20 23:31:23 -0700</bug_when>
    <thetext>Created attachment 438783
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795428</commentid>
    <comment_count>9</comment_count>
      <attachid>438779</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-21 00:05:53 -0700</bug_when>
    <thetext>Comment on attachment 438779
Patch

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

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:67
&gt; +        promise.resolve(result.releaseReturnValue());

promise.settle is not working?

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:85
&gt; +        promise.resolve(result.releaseReturnValue());

promise.settle is not working?

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandle.cpp:45
&gt; +void FileSystemHandle::isSameEntry(FileSystemHandle&amp; handle, DOMPromiseDeferred&lt;IDLBoolean&gt;&amp;&amp; promise)

We could try to keep const here by having a const impl() getter.

&gt; Source/WebCore/Modules/storage/StorageManager.cpp:84
&gt; +    return connectionInfo.connection.persisted(WTFMove(connectionInfo.origin), [promise = WTFMove(promise)](bool persisted) mutable {

I would tend to rename persisted to getPersisted, retrieveIsPersisted or something else with a verb...

&gt; Source/WebCore/Modules/storage/StorageManager.cpp:85
&gt;          promise.resolve(persisted);

Are we sure persisted will not sometimes return an exception?

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:41
&gt; +    : m_identifier(FileSystemStorageHandleIdentifier::generate())

Should it be generateThreadSafe()?

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:36
&gt; +{

Every operation is done out of main thread here, we could add some ASSERT(!isMainThread())

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:83
&gt; +    if (auto handles = m_handlesByConnection.find(connection.uniqueID()); handles != m_handlesByConnection.end()) {

I would tend to do the usual:
auto handles = m_handlesByConnection.find(connection.uniqueID());
if (handles == m_handlesByConnection.end())
   return;
...

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:87
&gt; +            m_registry.unregisterHandle(handleIdentifier);

Call to remove-then-take is probably an issue.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:39
&gt; +    explicit FileSystemStorageManager(String&amp;&amp; path, FileSystemStorageHandleRegistry&amp;);

No need for explicit

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:49
&gt; +    FileSystemStorageHandleRegistry&amp; m_registry;

Are we sure this is always granted that FileSystemStorageHandleRegistry will outlive its FileSystemStorageManager?
We could make FileSystemStorageHandleRegistry  thread safe ref counted and take a Ref&lt;&gt; here if we are not sure of that.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:50
&gt; +    WeakHashSet&lt;IPC::Connection&gt; m_connections;

This does not look safe.
It might be better to move to a HashSet&lt;IPC::Connection::UniqueID&gt;
I am not sure of the actual use of m_connections, maybe it can be removed altogether.

&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:145
&gt; +    handle-&gt;getFileHandle(connection, name, createIfNecessary, WTFMove(completionHandler));

There we could eventually take a String&amp;&amp; name if getFileHandle could make use of it.

&gt; Source/WebKit/WebKit.xcodeproj/project.pbxproj:6
&gt; +	objectVersion = 54;

Do we need that change?

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:70
&gt; +void FileSystemStorageHandleProxy::getFileHandle(String&amp;&amp; name, bool createIfNecessary, CompletionHandler&lt;void(WebCore::ExceptionOr&lt;Ref&lt;WebCore::FileSystemFileHandle&gt;&gt;&amp;&amp;)&gt;&amp;&amp; completionHandler)

We do not use String&amp;&amp; here. A const String&amp; might be enough.
Ditto probably below

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:49
&gt;      connection().sendWithAsyncReply(Messages::NetworkStorageManager::Persist(origin), WTFMove(completionHandler));

It does not seem like we need &amp;&amp; here. const ClientOrigin&amp; should be sufficient. Ditto for persisted.

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:52
&gt; +void WebStorageConnection::fileSystemGetDirectory(WebCore::ClientOrigin&amp;&amp; origin, CompletionHandler&lt;void(WebCore::ExceptionOr&lt;Ref&lt;WebCore::FileSystemDirectoryHandle&gt;&gt;&amp;&amp;)&gt;&amp;&amp; completionHandler)

Ditto for ClientOrigin&amp;&amp;

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:55
&gt; +    connection.sendWithAsyncReply(Messages::NetworkStorageManager::FileSystemGetDirectory(origin), [weakConnection = makeWeakPtr(connection), completionHandler = WTFMove(completionHandler)](auto identifier, auto error) mutable {

I think messages.in supports Expected&lt;&gt; which might better here.
There are a few places above where it could be used as well.
Maybe it could support ExceptionOr as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795799</commentid>
    <comment_count>10</comment_count>
      <attachid>438779</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-21 15:07:33 -0700</bug_when>
    <thetext>Comment on attachment 438779
Patch

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

S

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:67
&gt;&gt; +        promise.resolve(result.releaseReturnValue());
&gt; 
&gt; promise.settle is not working?

Yes, result here is ExceptionOr&lt;Ref&lt;WebCore::FileSystemDirectoryHandle&gt;&gt;. I tried settle() and a compile error said it cannot convert.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:85
&gt;&gt; +        promise.resolve(result.releaseReturnValue());
&gt; 
&gt; promise.settle is not working?

Ditto.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandle.cpp:45
&gt;&gt; +void FileSystemHandle::isSameEntry(FileSystemHandle&amp; handle, DOMPromiseDeferred&lt;IDLBoolean&gt;&amp;&amp; promise)
&gt; 
&gt; We could try to keep const here by having a const impl() getter.

Sure.

&gt;&gt; Source/WebCore/Modules/storage/StorageManager.cpp:84
&gt;&gt; +    return connectionInfo.connection.persisted(WTFMove(connectionInfo.origin), [promise = WTFMove(promise)](bool persisted) mutable {
&gt; 
&gt; I would tend to rename persisted to getPersisted, retrieveIsPersisted or something else with a verb...

Sure, will change to getPersisted

&gt;&gt; Source/WebCore/Modules/storage/StorageManager.cpp:85
&gt;&gt;          promise.resolve(persisted);
&gt; 
&gt; Are we sure persisted will not sometimes return an exception?

It does not based on current implementation (once it connects to the network process it should get an answer).

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:41
&gt;&gt; +    : m_identifier(FileSystemStorageHandleIdentifier::generate())
&gt; 
&gt; Should it be generateThreadSafe()?

Yes, will change.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:36
&gt;&gt; +{
&gt; 
&gt; Every operation is done out of main thread here, we could add some ASSERT(!isMainThread())

Sure

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:83
&gt;&gt; +    if (auto handles = m_handlesByConnection.find(connection.uniqueID()); handles != m_handlesByConnection.end()) {
&gt; 
&gt; I would tend to do the usual:
&gt; auto handles = m_handlesByConnection.find(connection.uniqueID());
&gt; if (handles == m_handlesByConnection.end())
&gt;    return;
&gt; ...

Sure.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:87
&gt;&gt; +            m_registry.unregisterHandle(handleIdentifier);
&gt; 
&gt; Call to remove-then-take is probably an issue.

oops, I meant to use take(), will remove remove()

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:39
&gt;&gt; +    explicit FileSystemStorageManager(String&amp;&amp; path, FileSystemStorageHandleRegistry&amp;);
&gt; 
&gt; No need for explicit

Right

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:49
&gt;&gt; +    FileSystemStorageHandleRegistry&amp; m_registry;
&gt; 
&gt; Are we sure this is always granted that FileSystemStorageHandleRegistry will outlive its FileSystemStorageManager?
&gt; We could make FileSystemStorageHandleRegistry  thread safe ref counted and take a Ref&lt;&gt; here if we are not sure of that.

Yes, I guess we can set FileSystemStorageHandleRegistry on the background thread to ensure that.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h:50
&gt;&gt; +    WeakHashSet&lt;IPC::Connection&gt; m_connections;
&gt; 
&gt; This does not look safe.
&gt; It might be better to move to a HashSet&lt;IPC::Connection::UniqueID&gt;
&gt; I am not sure of the actual use of m_connections, maybe it can be removed altogether.

Yes, it is unneeded.

&gt;&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:145
&gt;&gt; +    handle-&gt;getFileHandle(connection, name, createIfNecessary, WTFMove(completionHandler));
&gt; 
&gt; There we could eventually take a String&amp;&amp; name if getFileHandle could make use of it.

Sure

&gt;&gt; Source/WebKit/WebKit.xcodeproj/project.pbxproj:6
&gt;&gt; +	objectVersion = 54;
&gt; 
&gt; Do we need that change?

Nope.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:70
&gt;&gt; +void FileSystemStorageHandleProxy::getFileHandle(String&amp;&amp; name, bool createIfNecessary, CompletionHandler&lt;void(WebCore::ExceptionOr&lt;Ref&lt;WebCore::FileSystemFileHandle&gt;&gt;&amp;&amp;)&gt;&amp;&amp; completionHandler)
&gt; 
&gt; We do not use String&amp;&amp; here. A const String&amp; might be enough.
&gt; Ditto probably below

Sure.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:49
&gt;&gt;      connection().sendWithAsyncReply(Messages::NetworkStorageManager::Persist(origin), WTFMove(completionHandler));
&gt; 
&gt; It does not seem like we need &amp;&amp; here. const ClientOrigin&amp; should be sufficient. Ditto for persisted.

Will change.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:52
&gt;&gt; +void WebStorageConnection::fileSystemGetDirectory(WebCore::ClientOrigin&amp;&amp; origin, CompletionHandler&lt;void(WebCore::ExceptionOr&lt;Ref&lt;WebCore::FileSystemDirectoryHandle&gt;&gt;&amp;&amp;)&gt;&amp;&amp; completionHandler)
&gt; 
&gt; Ditto for ClientOrigin&amp;&amp;

Will change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795813</commentid>
    <comment_count>11</comment_count>
      <attachid>438870</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-21 15:34:58 -0700</bug_when>
    <thetext>Created attachment 438870
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795906</commentid>
    <comment_count>12</comment_count>
      <attachid>438902</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-21 19:04:17 -0700</bug_when>
    <thetext>Created attachment 438902
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795947</commentid>
    <comment_count>13</comment_count>
      <attachid>438918</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-21 21:47:45 -0700</bug_when>
    <thetext>Created attachment 438918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795992</commentid>
    <comment_count>14</comment_count>
      <attachid>438918</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-22 02:03:56 -0700</bug_when>
    <thetext>Comment on attachment 438918
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Test: storage/filesystemaccess/directory-handle-basics.html

Would be good to add some more information about what the patch does.
For instance pointers to spec, what is done and what is still missing...

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:49
&gt; +void FileSystemDirectoryHandle::getFileHandle(String&amp;&amp; name, std::optional&lt;FileSystemDirectoryHandle::GetFileOptions&gt; options, DOMPromiseDeferred&lt;IDLInterface&lt;FileSystemFileHandle&gt;&gt;&amp;&amp; promise)

String&amp;&amp; does not seem needed since impl().getFileHandle seems to take a const String&amp;.
Ditto in other places below.

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:79
&gt; +void FileSystemDirectoryHandle::resolve(FileSystemHandle&amp; handle, DOMPromiseDeferred&lt;IDLSequence&lt;IDLUSVString&gt;&gt;&amp;&amp; promise)

Can we keep const&amp; here?

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandleImpl.h:36
&gt; +class FileSystemHandleImpl : public RefCounted&lt;FileSystemHandleImpl&gt; {

What is the purpose of this class? Does it need to be refcounted?
Is it to handle worker  vs. window differences?

&gt; Source/WebCore/Modules/storage/StorageManager.cpp:74
&gt; +    return ConnectionInfo { *connection, { context-&gt;topOrigin().data(), origin-&gt;data() } };

No need for return here. Ditto below.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:61
&gt; +void FileSystemStorageHandle::isSameEntry(FileSystemStorageHandleIdentifier identifier, CompletionHandler&lt;void(bool)&gt;&amp;&amp; completionHandler)

Do we need a completion handler or are we expecting to always return a result synchronously?
Ditto below.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.h:57
&gt; +    WeakPtr&lt;FileSystemStorageManager&gt; m_manager;

m_manager will probably be used in a background thread, are we sure m_manager will be destroyed in the same background thread?
From my reading of the code, it seems correct, but I want to make sure.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:48
&gt; +void FileSystemStorageManager::createHandle(IPC::Connection&amp; connection, FileSystemStorageHandle::Type type, String&amp;&amp; path, String&amp;&amp; name, bool createIfNecessary, CompletionHandler&lt;void(Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt;)&gt;&amp;&amp; completionHandler)

Do we need a completion handler here or do we always expect to synchronously return the value.
Ditto for other methods.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:71
&gt; +    m_handlesByConnection.ensure(connection.uniqueID(), [&amp;] {

It seems we are only using connection for its uniqueID. I guess we could simply pass uniqueID on all the methods?

&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:101
&gt; +    m_queue-&gt;dispatch([this, protectedThis = Ref { *this }, protectedConnection = Ref { connection }]() {

We probably to ensure proctedThis goes back to main run loop.
If we are sure we only need to keep connection identifiers, we could remove protectedConnection and capture its id instead.

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:83
&gt; +        completionHandler(WebCore::FileSystemFileHandle::create(String { name }, WTFMove(handle)));

I think it would be better to create FileSystemFileHandle objects in WebCore and pass the necessary parameters to create it in the completion handler.
One reason is that this code path might be used for creating both window and worker file handle objects.
We may also in the future want to have file handle objects be ActiveDOMObjects or ContextDestructionObserver for instance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796100</commentid>
    <comment_count>15</comment_count>
      <attachid>438918</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-22 09:32:49 -0700</bug_when>
    <thetext>Comment on attachment 438918
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        Test: storage/filesystemaccess/directory-handle-basics.html
&gt; 
&gt; Would be good to add some more information about what the patch does.
&gt; For instance pointers to spec, what is done and what is still missing...

Sure, will add.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:49
&gt;&gt; +void FileSystemDirectoryHandle::getFileHandle(String&amp;&amp; name, std::optional&lt;FileSystemDirectoryHandle::GetFileOptions&gt; options, DOMPromiseDeferred&lt;IDLInterface&lt;FileSystemFileHandle&gt;&gt;&amp;&amp; promise)
&gt; 
&gt; String&amp;&amp; does not seem needed since impl().getFileHandle seems to take a const String&amp;.
&gt; Ditto in other places below.

Okay.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:79
&gt;&gt; +void FileSystemDirectoryHandle::resolve(FileSystemHandle&amp; handle, DOMPromiseDeferred&lt;IDLSequence&lt;IDLUSVString&gt;&gt;&amp;&amp; promise)
&gt; 
&gt; Can we keep const&amp; here?

Sure.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandleImpl.h:36
&gt;&gt; +class FileSystemHandleImpl : public RefCounted&lt;FileSystemHandleImpl&gt; {
&gt; 
&gt; What is the purpose of this class? Does it need to be refcounted?
&gt; Is it to handle worker  vs. window differences?

Yes, for worker (and the possibility for WebKitLegacy)

&gt;&gt; Source/WebCore/Modules/storage/StorageManager.cpp:74
&gt;&gt; +    return ConnectionInfo { *connection, { context-&gt;topOrigin().data(), origin-&gt;data() } };
&gt; 
&gt; No need for return here. Ditto below.

Will remove.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:61
&gt;&gt; +void FileSystemStorageHandle::isSameEntry(FileSystemStorageHandleIdentifier identifier, CompletionHandler&lt;void(bool)&gt;&amp;&amp; completionHandler)
&gt; 
&gt; Do we need a completion handler or are we expecting to always return a result synchronously?
&gt; Ditto below.

This will be returned sync-ly. Will remove the completion handler here.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.h:57
&gt;&gt; +    WeakPtr&lt;FileSystemStorageManager&gt; m_manager;
&gt; 
&gt; m_manager will probably be used in a background thread, are we sure m_manager will be destroyed in the same background thread?
&gt; From my reading of the code, it seems correct, but I want to make sure.

Yes, this will be used on background queue only.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:48
&gt;&gt; +void FileSystemStorageManager::createHandle(IPC::Connection&amp; connection, FileSystemStorageHandle::Type type, String&amp;&amp; path, String&amp;&amp; name, bool createIfNecessary, CompletionHandler&lt;void(Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt;)&gt;&amp;&amp; completionHandler)
&gt; 
&gt; Do we need a completion handler here or do we always expect to synchronously return the value.
&gt; Ditto for other methods.

They should return sync-ly. Will change their return value.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.cpp:71
&gt;&gt; +    m_handlesByConnection.ensure(connection.uniqueID(), [&amp;] {
&gt; 
&gt; It seems we are only using connection for its uniqueID. I guess we could simply pass uniqueID on all the methods?

Yes.

&gt;&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:101
&gt;&gt; +    m_queue-&gt;dispatch([this, protectedThis = Ref { *this }, protectedConnection = Ref { connection }]() {
&gt; 
&gt; We probably to ensure proctedThis goes back to main run loop.
&gt; If we are sure we only need to keep connection identifiers, we could remove protectedConnection and capture its id instead.

We don&apos;t need to dispatch it back to main runloop since NetworkStorageManager::close() should take the last reference?

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:83
&gt;&gt; +        completionHandler(WebCore::FileSystemFileHandle::create(String { name }, WTFMove(handle)));
&gt; 
&gt; I think it would be better to create FileSystemFileHandle objects in WebCore and pass the necessary parameters to create it in the completion handler.
&gt; One reason is that this code path might be used for creating both window and worker file handle objects.
&gt; We may also in the future want to have file handle objects be ActiveDOMObjects or ContextDestructionObserver for instance.

Sounds good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796104</commentid>
    <comment_count>16</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-22 09:35:37 -0700</bug_when>
    <thetext>&gt; We don&apos;t need to dispatch it back to main runloop since NetworkStorageManager::close() should take the last reference?

This is not guaranteed and in any case, destructing in the same thread it is constructing to is usually safer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796109</commentid>
    <comment_count>17</comment_count>
      <attachid>438957</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-22 09:43:35 -0700</bug_when>
    <thetext>Created attachment 438957
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796111</commentid>
    <comment_count>18</comment_count>
      <attachid>438958</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-22 09:45:34 -0700</bug_when>
    <thetext>Created attachment 438958
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796116</commentid>
    <comment_count>19</comment_count>
      <attachid>438960</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-22 09:58:01 -0700</bug_when>
    <thetext>Created attachment 438960
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796120</commentid>
    <comment_count>20</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-22 10:14:55 -0700</bug_when>
    <thetext>rdar://83405890</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796516</commentid>
    <comment_count>21</comment_count>
      <attachid>438960</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-23 08:55:00 -0700</bug_when>
    <thetext>Comment on attachment 438960
Patch

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

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:51
&gt; +    bool createIfNecessary = options ? options-&gt;create : false;

You can probably use bool createIfNecessary = options.value_or({ }).create;
Ditto below

&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandleImpl.h:36
&gt; +class FileSystemHandleImpl : public RefCounted&lt;FileSystemHandleImpl&gt; {

Not clear to me we need RefCounted, maybe a UniqueRef&lt;FileSystemHandleImpl&gt; might be needed.
I also think we could have a Connection-like class with the same interface except it would take a FileSystemHandleIdentifier that would be globally unique to the process.
Then FileSystemHandle would own a Ref/RefPtr&lt;Connection&gt; and an identifier.
The connection would have a SessionID and would be responsible to do the abstraction between worker and window.
In that case, you could share the same connection for all handles of a give worker/window.

Let&apos;s check this idea after landing this one.

&gt; Source/WebCore/Modules/storage/StorageManager.cpp:57
&gt; +ExceptionOr&lt;StorageManager::ConnectionInfo&gt; StorageManager::connectionInfo()

It could be a free function taking a Navigator*.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageError.h:50
&gt; +    default:

I would remove default so that any new error value would trigger the need to update this code.

&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:120
&gt; +        RELEASE_ASSERT_NOT_REACHED();

I would tend to replace default by SymbolicLink here.

&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:77
&gt; +        m_fileSystemStorageHandleRegistry = nullptr;

Should we set m_fileSystemStorageHandleRegistry to nullptr after clearing the maps in case one of the map values has a reference to m_fileSystemStorageHandleRegistry?

&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:219
&gt;      m_queue-&gt;dispatch([this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)]() mutable {

I see that we are not hopping the ref back to main thread here.
I would tend to audit the code and make all dispatch that takes a ref do the same (Either hop back to main thread to make sure it stays destroyed in main thread or not).

&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:220
&gt;          m_localOriginStorageManagers.clear();

Should we set m_fileSystemStorageHandleRegistry to nullptr?

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:56
&gt; +        return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot; });

Seems good enough like this but we might want to have a strategy in case of network process crash

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:75
&gt; +    m_connection-&gt;sendWithAsyncReply(Messages::NetworkStorageManager::GetFileHandle(m_identifier, name, createIfNecessary), [this, protectedThis = Ref { *this }, name, completionHandler = WTFMove(completionHandler)](auto result) mutable {

It seems we only need connection, maybe we should catch connection instead.
Here and below.

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:80
&gt; +            return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot;_s });

It would not be null in the case we would catch it, I guess if connection is null, it would mean connection is lost and we would probably end up in the if (!result) code path.
This is worth checking.

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:83
&gt; +        completionHandler(WTFMove(impl));

Could be a one liner

&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.h:60
&gt; +    RefPtr&lt;IPC::Connection&gt; m_connection;

It seems it could be called from main thread and worker thread.
By keeping a ref here, I am unclear of how we do handle network process crash recovery, in particular in workers.
This is worth thinking after landing this patch, as part of the worker model.

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:60
&gt; +            return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot;_s });

I am not sure we can have a result and a !weakConnection. Worth checking what is the default result when connection gets closed with a pending reply.

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:63
&gt; +        return completionHandler(WebCore::FileSystemDirectoryHandle::create({ }, WTFMove(impl)));

Could be a one liner.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796781</commentid>
    <comment_count>22</comment_count>
      <attachid>439124</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-23 22:23:32 -0700</bug_when>
    <thetext>Created attachment 439124
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796782</commentid>
    <comment_count>23</comment_count>
      <attachid>438960</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-09-23 22:23:52 -0700</bug_when>
    <thetext>Comment on attachment 438960
Patch

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

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemDirectoryHandle.cpp:51
&gt;&gt; +    bool createIfNecessary = options ? options-&gt;create : false;
&gt; 
&gt; You can probably use bool createIfNecessary = options.value_or({ }).create;
&gt; Ditto below

I need to use bool createIfNecessary = options.value_or(FileSystemDirectoryHandle::GetFileOptions { }).create to compile.. which seems more verbose than this.

&gt;&gt; Source/WebCore/Modules/filesystemaccess/FileSystemHandleImpl.h:36
&gt;&gt; +class FileSystemHandleImpl : public RefCounted&lt;FileSystemHandleImpl&gt; {
&gt; 
&gt; Not clear to me we need RefCounted, maybe a UniqueRef&lt;FileSystemHandleImpl&gt; might be needed.
&gt; I also think we could have a Connection-like class with the same interface except it would take a FileSystemHandleIdentifier that would be globally unique to the process.
&gt; Then FileSystemHandle would own a Ref/RefPtr&lt;Connection&gt; and an identifier.
&gt; The connection would have a SessionID and would be responsible to do the abstraction between worker and window.
&gt; In that case, you could share the same connection for all handles of a give worker/window.
&gt; 
&gt; Let&apos;s check this idea after landing this one.

Sure

&gt;&gt; Source/WebCore/Modules/storage/StorageManager.cpp:57
&gt;&gt; +ExceptionOr&lt;StorageManager::ConnectionInfo&gt; StorageManager::connectionInfo()
&gt; 
&gt; It could be a free function taking a Navigator*.

Okay.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageError.h:50
&gt;&gt; +    default:
&gt; 
&gt; I would remove default so that any new error value would trigger the need to update this code.

Sure.

&gt;&gt; Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.cpp:120
&gt;&gt; +        RELEASE_ASSERT_NOT_REACHED();
&gt; 
&gt; I would tend to replace default by SymbolicLink here.

Sure.

&gt;&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:77
&gt;&gt; +        m_fileSystemStorageHandleRegistry = nullptr;
&gt; 
&gt; Should we set m_fileSystemStorageHandleRegistry to nullptr after clearing the maps in case one of the map values has a reference to m_fileSystemStorageHandleRegistry?

Sure.

&gt;&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:219
&gt;&gt;      m_queue-&gt;dispatch([this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)]() mutable {
&gt; 
&gt; I see that we are not hopping the ref back to main thread here.
&gt; I would tend to audit the code and make all dispatch that takes a ref do the same (Either hop back to main thread to make sure it stays destroyed in main thread or not).

Sure, I will add the main thread callback.

&gt;&gt; Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:220
&gt;&gt;          m_localOriginStorageManagers.clear();
&gt; 
&gt; Should we set m_fileSystemStorageHandleRegistry to nullptr?

No, handles will be unregistered when they go away and m_fileSystemStorageHandleRegistry should stay as long as NetworkStorageManager is functional.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:56
&gt;&gt; +        return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot; });
&gt; 
&gt; Seems good enough like this but we might want to have a strategy in case of network process crash

Current strategy is if network process crashes, the handler will be numb (so user will need to create a new one). We can think about recovering I guess.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:75
&gt;&gt; +    m_connection-&gt;sendWithAsyncReply(Messages::NetworkStorageManager::GetFileHandle(m_identifier, name, createIfNecessary), [this, protectedThis = Ref { *this }, name, completionHandler = WTFMove(completionHandler)](auto result) mutable {
&gt; 
&gt; It seems we only need connection, maybe we should catch connection instead.
&gt; Here and below.

We can catch connection here.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:80
&gt;&gt; +            return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot;_s });
&gt; 
&gt; It would not be null in the case we would catch it, I guess if connection is null, it would mean connection is lost and we would probably end up in the if (!result) code path.
&gt; This is worth checking.

Looks like if connection is lost, result will be set as { }, which is invalid identifier 0. We can check that.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.cpp:83
&gt;&gt; +        completionHandler(WTFMove(impl));
&gt; 
&gt; Could be a one liner

Compile error for completionHandler(FileSystemStorageHandleProxy::create(result.value(), *m_connection)): no matching function for call to object of type

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/FileSystemStorageHandleProxy.h:60
&gt;&gt; +    RefPtr&lt;IPC::Connection&gt; m_connection;
&gt; 
&gt; It seems it could be called from main thread and worker thread.
&gt; By keeping a ref here, I am unclear of how we do handle network process crash recovery, in particular in workers.
&gt; This is worth thinking after landing this patch, as part of the worker model.

I intend to not let FileSystemStorageHandleProxy be used in worker thread by maybe adding a new WorkerFileSystemHandleImpl

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:60
&gt;&gt; +            return completionHandler(WebCore::Exception { WebCore::UnknownError, &quot;Connection is lost&quot;_s });
&gt; 
&gt; I am not sure we can have a result and a !weakConnection. Worth checking what is the default result when connection gets closed with a pending reply.

It can happen. I think result is set to be  Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt; { } when connection is lost, which is invalid identifier.

&gt;&gt; Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:63
&gt;&gt; +        return completionHandler(WebCore::FileSystemDirectoryHandle::create({ }, WTFMove(impl)));
&gt; 
&gt; Could be a one liner.

Okay.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796798</commentid>
    <comment_count>24</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-24 00:04:59 -0700</bug_when>
    <thetext>&gt; &gt; I am not sure we can have a result and a !weakConnection. Worth checking what is the default result when connection gets closed with a pending reply.
&gt; 
&gt; It can happen. I think result is set to be 
&gt; Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt; { } when
&gt; connection is lost, which is invalid identifier.

You could change the default behavior by using AsyncReplyError, something like:

template&lt;&gt; struct AsyncReplyError&lt; Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt;  &gt; {
    static Expected&lt;FileSystemStorageHandleIdentifier, FileSystemStorageError&gt;  create() { return makeUnexpected(WebCore::FileSystemStorageError::XXX); };
};

Then, I would think you could just check whether the result is an error or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796802</commentid>
    <comment_count>25</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-09-24 00:22:08 -0700</bug_when>
    <thetext>Committed r283029 (242089@main): &lt;https://commits.webkit.org/242089@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 439124.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798591</commentid>
    <comment_count>26</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2021-09-29 14:59:47 -0700</bug_when>
    <thetext>This seems to be causing errors for non-Cocoa or non-clang builds:

In file included from /app/webkit/WebKitBuild/Release/DerivedSources/WebKit/NetworkStorageManagerMessages.h:29,
                 from /app/webkit/Source/WebKit/WebProcess/WebCoreSupport/WebStorageConnection.cpp:31,
                 from /app/webkit/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource-54928a2b-19.cpp:3:
/app/webkit/Source/WebKit/NetworkProcess/storage/FileSystemStorageError.h: In function ‘WebCore::ExceptionCode WebKit::convertToExceptionCode(WebKit::FileSystemStorageError)’:
/app/webkit/Source/WebKit/NetworkProcess/storage/FileSystemStorageError.h:55:1: warning: control reaches end of non-void function [-Wreturn-type]
   55 | }
      | ^

I believe there&apos;s a macro we use to add a default clause or ignore the error when there is no default clause.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798592</commentid>
    <comment_count>27</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2021-09-29 15:07:01 -0700</bug_when>
    <thetext>We may have switched to just adding
     default:
        ASSERT_NOT_REACHED();</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438700</attachid>
            <date>2021-09-20 11:13:45 -0700</date>
            <delta_ts>2021-09-20 13:56:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920111344.patch</filename>
            <type>text/plain</type>
            <size>184545</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uOTE1ZjA3MTc3Mjc0NDU4MTBiZjBmNjllMzg5OTMw
Y2I2NTk0MGNmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuIEZpbGVT
eXN0ZW1IYW5kbGUgaXMgc3ViY2xhc3NlZCwgc28gd2UgbmVlZCB0byBhZGQgY3VzdG9tIAorICAg
ICAgICB3cmFwcGVyIGZ1bmN0aW9uIHRvIGNvbnN0cnVjdCB0aGUgcmlnaHQgd3JhcHBlci4KKyAg
ICAgICAgYmFzZWQgb24gdHlwZS4KKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAo
V2ViQ29yZTo6dG9KU05ld2x5Q3JlYXRlZCk6CisKIDIwMjEtMDktMjAgIEplciBOb2JsZSAgPGpl
ci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtlIEFWU2FtcGxlQnVmZmVy
VmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVyZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBi
MWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi40NGMwMDYzMzBlYzU2MDhj
YTYwYzE3OGRkMTE2NTAyNjQ0ZWM4YTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDgxIEBACisyMDIx
LTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBp
bml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVjZSBjbGFzcyBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lzdGVtSGFuZGxl
IGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpjb252ZXJ0VG9F
eGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToKKyAgICAgICAg
KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29sdmUpOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaDog
QWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppZGVudGlm
aWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnBh
dGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cXVl
dWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFkZGVkLgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpyZWdpc3Rlckhh
bmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6
OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA6IEFkZGVk
LgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVkLgorICAgICAg
ICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZp
bmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6
Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlv
bkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0
QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3Qp
OgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3Jh
Z2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9y
YWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3Nh
Z2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6
CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9u
Q2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDogQWRkZWQu
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVt
R2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0
b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9o
c2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRlU2hhcmVhYmxl
Qml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXgg
ZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAyZDViMDk3YzM0
MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00MCw2ICs0
MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVz
L2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAgICAgTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVsZXMvZ2VvbG9j
YXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEyZTEuLmRiYjA4
YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKIAorI2luY2x1
ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJy
ZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGlu
ZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lN
UEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkK
K1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwp
CiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShX
VEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFt
ZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0
b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6
RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiwgc3Rk
OjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4sIERP
TVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmIHBy
b21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoU3Ry
aW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRG
aWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxl
U3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNl
cHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0ZSA6IGZhbHNl
OworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9t
aXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAot
dm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoY29uc3Qg
U3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJl
Y3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRpb25zLCBET01Q
cm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYm
IHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVk
RXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0RGly
ZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9
IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJl
c3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChy
ZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJlc29sdmUocmVz
dWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6Om9wdGlvbmFs
PEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVm
ZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpy
ZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lk
PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9y
dGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxldGVSZWN1cnNp
dmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAgICBpbXBsKCku
cmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtwcm9taXNlID0g
V1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBwcm9taXNl
LnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21p
c2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2UpCit2b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxl
LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNl
KQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAi
Tm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRsZS5pbXBsKCks
IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAg
ICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2Uu
cmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaApp
bmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43YzQ3ZTc1NWVj
MGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAgV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1YmxpYzoKICAgICBz
dHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1YmxpYzoKICAgICAg
ICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAgdm9pZCBnZXRG
aWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRGaWxlT3B0aW9u
cz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+
PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIHN0
ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJ
bnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZvaWQgcmVtb3Zl
RW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlvbnM+LCBE
T01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNvbnN0IEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7Cisg
ICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0Rmls
ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxl
SGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwg
c3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElE
TEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAgdm9pZCByZW1v
dmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5k
bGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4mJik7CiAK
IHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0
ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
KQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxl
JiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUxMzM0ZjMwNzcw
ZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2VhMjVhZDA5ZjBl
MTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgog
CisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21p
c2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTMz
LDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRmlsZUhhbmRs
ZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQorUmVmPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsKKyAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZN
b3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhh
bmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVI
YW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lz
dGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlkYzM5OTFjMDRl
M2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3MgRmlsZTsKIGNs
YXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUg
ewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogcHVi
bGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcm
Jik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4g
Y3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQg
Z2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYmKTsKIAogcHJp
dmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJik7CisgICAg
RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
Jik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJ
VFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3RhdGljIGJvb2wg
aXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkgeyByZXR1cm4g
aGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlOyB9
CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKaW5k
ZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3NDQ4Y2ZlNWE2
MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcApA
QCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FM
TE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFuZGxlOjpGaWxl
U3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSkK
K0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkK
ICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkpCisgICAgLCBt
X2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1Nh
bWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJv
b2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVtSGFuZGxlKCkg
PSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0
ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlz
ZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwg
Ik5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRsZS5raW5kKCkg
fHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlc29s
dmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1wbCgpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAg
cHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5YmI2MzdmMTdm
MDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1OTRhMDU4MzQy
ZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZl
cnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNzIFBlcm1pc3Np
b25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBwdWJsaWMgUmVm
Q291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChG
aWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxl
KCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAgRmlsZSwKICAg
ICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUo
KSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0K
ICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICBG
aWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQoKTsgfQogCi0g
ICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhh
bmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJvdGVjdGVkOgot
ICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAgRmlsZVN5c3Rl
bUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYp
OwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9OwogICAgIFN0cmlu
ZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5kZXggMjA4ZTc0
NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYzYzVjODc3ZGU2
ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApAQCAtMjksNiAr
MjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAgICBDdXN0b21U
b0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVuYWJsZWRCeVNl
dHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUlt
cGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1NDcwNTA4YWY3
ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIu
aD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xh
c3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDogcHVibGljIFJl
ZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5G
aWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRpb25hbDx1aW50
NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGlz
U2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChF
eGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRGaWxlSGFu
ZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJv
b2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8
UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwg
dm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdl
L0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIzMWY5NGI2NmFm
MDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFhYTU0NjExMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVBy
b3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFn
ZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAgIHsKICAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAgICAgICAKKyAg
ICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYmLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOworICAgICAgICB9
CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVjdGlvbigpIGZp
bmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZUNv
bm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVj
dGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhjNzU1MzMuLjY2
ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBAIC0yNSwxMSAr
MjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAjaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIGNsYXNz
IFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNvbm5lY3Rpb24+
IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0
aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2lu
JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4m
JikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9y
aWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
Y3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLjdjMTY4
OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAg
QEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2lu
LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNl
LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFu
YWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQor
c3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2Vw
dGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4g
cHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3Ig
ZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBj
b250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAo
IWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJf
cyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAg
ICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAK
LSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICgh
b3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVj
dGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9y
aWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4o
KS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBj
b25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5lY3Rpb25JbmZv
Lm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11
dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAgICB9KTsKIH0K
IAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9v
bGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVy
biBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRv
ciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRp
b24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9u
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlv
bkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0byBjb250ZXh0
ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBpZiAoIWNvbnRl
eHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBhdXRvIGNvbm5l
Y3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICghY29ubmVjdGlv
bikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8qIG9y
aWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmlnaW4pCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNp
c3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9t
aXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1
dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1
cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3Qo
V1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlz
ZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHBl
cnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1B
Y2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygp
OworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxl
YXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25J
bmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rp
b25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3ZlKGNvbm5lY3Rp
b25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQp
IG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisg
ICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAg
IH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4
Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5
ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdl
TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNz
IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAK
IGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+
IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcg
KzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2Vy
KE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNl
cHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5h
dmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMy
Y2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3
NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJp
bmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2Fn
ZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmlu
ZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3Vz
dG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRp
bmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFk
OGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBj
MTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNE
QTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25S
dWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAw
MTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDEx
MDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dy
b3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5
c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUz
QkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1
QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNG
NUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRB
cmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8q
IG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICov
OyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8q
IFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07
CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQw
RDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkz
NDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3Mu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdE
MjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsg
fTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5
QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07
Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRE
NjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyog
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5k
bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5
QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQw
MDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3Rl
bUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJD
ODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNw
ZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAq
LzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0
ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZl
LmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkz
NDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
aW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2
NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4
MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRM
aXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0
TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRF
OTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYw
MDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4
MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0
OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFB
MUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywK
IAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3Rv
bS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0Vs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hU
TUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5
MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJ
OTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5
MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJ
OTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJ
CQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1B
Y2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFu
YWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBA
CiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBp
biBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVt
RmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhG
IC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FD
OUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywK
IAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRs
ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5k
bGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3Njcy
N2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJK
U0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlND
OjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3
cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlND
OjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkK
K3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkK
KyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4o
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBw
ZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsK
K30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZmMzNTJlODRi
NTQyMzliYTI4NmU0NjE0YWYzODI3M2Y5MTZhYTJjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApA
QCAtMCwwICsxLDcyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxX
ZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDog
dWludDhfdCB7CisgICAgRW1wdHksCisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1l
LAorICAgIEludmFsaWRNb2RpZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25v
d24KK307CisKK2lubGluZSBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlv
bkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9y
KSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAg
ICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNh
c2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAg
cmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAg
cmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0Ogor
ICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAg
IH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1w
bGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4g
eworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
OjpFbXB0eSwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90
Rm91bmQsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5h
bWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlm
aWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlz
bWF0Y2gsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgor
ICAgID47Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmI3Yjg3NDNkZjlkNTMzZDE0MDA1NDgwYjdmZjY5NDgyZWQ3NTkw
MDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTM2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAi
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYg
T1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UK
K2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZSwgUmVmPFdvcmtRdWV1ZT4mJiBxdWV1ZSkKKyAgICA6IG1faWRlbnRpZmllcihG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI6OmdlbmVyYXRlKCkpCisgICAgLCBtX21h
bmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAgICAsIG1f
cGF0aChwYXRoKQorICAgICwgbV9uYW1lKG5hbWUpCisgICAgLCBtX3F1ZXVlKFdURk1vdmUocXVl
dWUpKQoreworICAgIEFTU0VSVCghbV9wYXRoLmlzRW1wdHkoKSk7CisKKyAgICBzd2l0Y2ggKG1f
dHlwZSkgeworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9y
eToKKyAgICAgICAgRmlsZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKG1fcGF0aCk7CisgICAg
ICAgIHJldHVybjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxl
OgorICAgICAgICBpZiAoRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhtX3BhdGgpKQorICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW06Om9wZW5GaWxlKG1f
cGF0aCwgRmlsZVN5c3RlbTo6RmlsZU9wZW5Nb2RlOjpXcml0ZSk7CisgICAgICAgIEZpbGVTeXN0
ZW06OmNsb3NlRmlsZShoYW5kbGUpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgYXV0byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOwor
ICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKG1fcGF0aCA9PSBwYXRoKTsKK30KKwor
dm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNv
bm5lY3Rpb24mIGNvbm5lY3Rpb24sIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0
Y2gpOworCisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisg
ICAgLy8gaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3ZhbGlkLWZp
bGUtbmFtZQorICAgIGlmIChuYW1lID09ICIuIiB8fCBuYW1lID09ICIuLiIgfHwgbmFtZS5jb250
YWlucyhwYXRoU2VwYXJhdG9yKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0
ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpOworCisgICAg
YXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwg
bmFtZSk7CisgICAgbV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgdHlwZSwgbV9x
dWV1ZS5nZXQoKSwgcGF0aCwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0Rmls
ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwg
Ym9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlv
bmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUo
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUsIG5hbWUsIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rp
b24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBuYW1lLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVs
ZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV90
eXBlICE9IFR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0
byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFt
ZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYg
KCF0eXBlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3VuZCk7CisKKyAgICBzd2l0Y2ggKHR5cGUudmFsdWUo
KSkgeworICAgIGNhc2UgRmlsZVN5c3RlbTo6RmlsZVR5cGU6OlJlZ3VsYXI6CisgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtOjpkZWxldGVGaWxlKHBhdGgpLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KQorICAgICAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0
b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtOjpkZWxldGVOb25FbXB0eURpcmVjdG9yeShw
YXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHkpOworICAgIGRlZmF1bHQ6CisgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgfQorfQorCit2
b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fbWFuYWdlcikKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bik7CisKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7Cisg
ICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
c3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGlm
ICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsK
KworICAgIGF1dG8gcmVzdFBhdGggPSBwYXRoLnN1YnN0cmluZyhtX3BhdGgubGVuZ3RoKCkpOwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3RQYXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTE0ZWE4MjY2ZTRmOGU0MWRl
MzhmYzFkNjZhZmFhZTVhNGExZjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCAr
MSw2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlv
bi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
ciA6IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENh
bk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRp
YWxpemF0aW9uOjpFYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGlj
OgorICAgIGVudW0gY2xhc3MgVHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBj
b25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgUmVmPFdvcmtRdWV1ZT4mJik7
CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIGNvbnN0IFN0cmluZyYgcGF0aCgpIGNv
bnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorICAgIFdvcmtRdWV1ZSYgcXVldWUoKSBjb25zdCB7IHJl
dHVybiBtX3F1ZXVlLmdldCgpOyB9CisKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOwor
ICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vy
c2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKK3ByaXZhdGU6CisgICAgdm9pZCByZXF1
ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFR5cGUsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBt
X2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFu
YWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBt
X25hbWU7CisgICAgUmVmPFdvcmtRdWV1ZT4gbV9xdWV1ZTsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY0MjcxN2U3MWRkODlhYTY0MTI2MmU4YzUxNDkyMzA1ZWRkM2EyMzgKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2VudW0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyVHlwZSB7IH07Cit1c2luZyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgPSBP
YmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGU+Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZTIzOWI3YzRlZTMwMjJjMGE3ZDk1NzU2ZTJmZGQ1
NGEwNjM0NTU1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCkBAIC0wLDAgKzEs
NTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeSgpID0gZGVmYXVsdDsKKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
OjpyZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUmIGhhbmRsZSkKK3sKKyAgICBBU1NFUlQoIW1f
aGFuZGxlcy5jb250YWlucyhpZGVudGlmaWVyKSk7CisKKyAgICBtX2hhbmRsZXMuYWRkKGlkZW50
aWZpZXIsIG1ha2VXZWFrUHRyKGhhbmRsZSkpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgQVNTRVJUKG1faGFuZGxlcy5jb250YWlucyhp
ZGVudGlmaWVyKSk7CisKKyAgICBtX2hhbmRsZXMucmVtb3ZlKGlkZW50aWZpZXIpOworfQorCitG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
Z2V0SGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQor
eworICAgIGlmIChhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy5nZXQoaWRlbnRpZmllcikpCisgICAg
ICAgIHJldHVybiBoYW5kbGUuZ2V0KCk7CisKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjIwNDQ4N2Y0ZWUzYzI3MjBiMzdhY2I4MTk1NmY4MWU3NzJkMDEz
MjcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oCkBAIC0wLDAgKzEsNDYgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKKyNpbmNs
dWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkgeworICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkoKTsKKyAgICB2b2lkIHJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUmKTsKKyAgICB2b2lkIHVu
cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSogZ2V0SGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcik7CisKK3ByaXZhdGU6CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIsIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+PiBtX2hhbmRs
ZXM7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OTlkMmY0ZTI1MWU3NDhlNDVkNzQ5MmNkZTY1YmRiOWJk
MjFmNjJkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKQEAgLTAsMCArMSw5OSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXIuaCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6RmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkmIHJlZ2lzdHJ5KQorICAgIDogbV9wYXRoKFdURk1vdmUocGF0aCkpCisgICAgLCBtX3JlZ2lz
dHJ5KHJlZ2lzdHJ5KQoreworfQorCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIoKQoreworICAgIGZvciAoYXV0byBpZGVudGlmaWVyIDogbV9oYW5k
bGVzLmtleXMoKSkKKyAgICAgICAgbV9yZWdpc3RyeS51bnJlZ2lzdGVySGFuZGxlKGlkZW50aWZp
ZXIpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGUg
dHlwZSwgUmVmPFdvcmtRdWV1ZT4mJiBxdWV1ZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAocGF0
aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxv
cHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgYXV0byBmaWxlRXhp
c3RzID0gRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhwYXRoKTsKKyAgICBpZiAoIWNyZWF0ZUlmTmVj
ZXNzYXJ5ICYmICFmaWxlRXhpc3RzKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
c3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQpOworCisg
ICAgaWYgKGZpbGVFeGlzdHMpIHsKKyAgICAgICAgYXV0byBleGlzdGluZ0ZpbGVUeXBlID0gRmls
ZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgICAgIGlmICghZXhpc3RpbmdGaWxlVHlwZSkK
KyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5k
bGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUudmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGlu
Z0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaCk7Cisg
ICAgfQorCisgICAgYXV0byBuZXdIYW5kbGUgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlPigqdGhpcywgdHlwZSwgcGF0aCwgbmFtZSwgV1RGTW92ZShxdWV1ZSkpOworICAgIGF1
dG8gbmV3SGFuZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRpZmllcigpOworICAgIG1f
aGFuZGxlc0J5Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbi51bmlxdWVJRCgpLCBbJl0gewor
ICAgICAgICBtX2Nvbm5lY3Rpb25zLmFkZChjb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIEhh
c2hTZXQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRl
cmF0b3ItPnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJl
Z2lzdGVySGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFu
ZGxlcy5hZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBj
b21wbGV0aW9uSGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpFbXB0eSk7Cit9CisKK2NvbnN0IFN0cmluZyYgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
OjpnZXRQYXRoKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQor
eworICAgIGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLmZpbmQoaWRlbnRpZmllcik7CisgICAgcmV0
dXJuIGhhbmRsZSA9PSBtX2hhbmRsZXMuZW5kKCkgPyBlbXB0eVN0cmluZygpIDogaGFuZGxlLT52
YWx1ZS0+cGF0aCgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVj
dGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKGF1dG8g
aGFuZGxlcyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQo
KSk7IGhhbmRsZXMgIT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKSB7CisgICAgICAgIGZv
ciAoYXV0byBoYW5kbGVJZGVudGlmaWVyIDogaGFuZGxlcy0+dmFsdWUpIHsKKyAgICAgICAgICAg
IG1faGFuZGxlcy5yZW1vdmUoaGFuZGxlSWRlbnRpZmllcik7CisgICAgICAgICAgICBhdXRvIGhh
bmRsZSA9IG1faGFuZGxlcy50YWtlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgbV9y
ZWdpc3RyeS51bnJlZ2lzdGVySGFuZGxlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICB9Cisg
ICAgICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUoaGFuZGxlcyk7CisgICAgICAgIG1f
Y29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pOworICAgIH0KK30KKwordm9pZCBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIFJlZjxXb3JrUXVldWU+JiYgcXVldWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpv
cHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjcmVhdGVIYW5kbGUoY29u
bmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSwgcXVldWUu
Z2V0KCksIG1fcGF0aCwgZW1wdHlTdHJpbmcoKSwgdHJ1ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yYjU0MzVlN2M2ZDczZDljODM2OTAxZDk0NTIxYTJiOGYzZDli
ZDYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgorCituYW1l
c3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsK
KworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIENhbk1ha2VXZWFrUHRy
PEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OworcHVibGljOgorICAgIGV4cGxpY2l0IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcm
JiBwYXRoLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CisgICAgfkZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcigpOworCisgICAgdm9pZCBjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0
aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGUsIFJlZjxXb3JrUXVldWU+JiYsIGNv
bnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIGNv
bnN0IFN0cmluZyYgZ2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOwor
ICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2b2lkIGdl
dERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBSZWY8V29ya1F1ZXVlPiYmLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgorICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9yZWdpc3Ry
eTsKKyAgICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7CisgICAg
SGFzaE1hcDxJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllcj4+IG1faGFuZGxlc0J5Q29ubmVjdGlvbjsKKyAgICBIYXNoTWFw
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRyPEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDM2MmFmYjg4NTJhZmY0ODA5OWUw
OWNmNTVlN2VjNjczNWU1MzMzYzcuLjNjMGNjZDc3Mjk3NzAyOTViZmRiMzgxNTkzZTZjNWZhYzMy
MGJkNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgiCiAK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAi
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdl
TWFuYWdlci5oIgogI2luY2x1ZGUgPHBhbC9jcnlwdG8vQ3J5cHRvRGlnZXN0Lmg+CkBAIC00MSw2
ICs0Miw3IEBAIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6Y3JlYXRlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JCiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0
cmluZyYgcGF0aCkKICAgICA6IG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fcXVldWUo
V29ya1F1ZXVlOjpjcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuU3RvcmFnZSIpKQorICAgICwgbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KG1ha2VVbmlxdWVSZWY8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKSkKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OwogCkBAIC01Myw2ICs1NSw4IEBAIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyCiAgICAgfSk7CiB9
CiAKK05ldHdvcmtTdG9yYWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpID0gZGVm
YXVsdDsKKwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2Fn
ZUZyb21Db25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKIHsKICAgICBBU1NF
UlQoUnVuTG9vcDo6aXNNYWluKCkpOwpAQCAtNjUsNiArNjksMTAgQEAgdm9pZCBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25u
ZWN0aW9uJgogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25uZWN0aW9u
LnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHByb3RlY3RlZENvbm5lY3Rpb24g
PSBtYWtlUmVmKGNvbm5lY3Rpb24pXSgpIHsKKyAgICAgICAgZm9yIChhdXRvJiBvcmlnaW5TdG9y
YWdlTWFuYWdlciA6IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMudmFsdWVzKCkpCisgICAg
ICAgICAgICBvcmlnaW5TdG9yYWdlTWFuYWdlci0+Y29ubmVjdGlvbkNsb3NlZChwcm90ZWN0ZWRD
b25uZWN0aW9uLmdldCgpKTsKKyAgICB9KTsKIH0KIAogc3RhdGljIFN0cmluZyBlbmNvZGUoY29u
c3QgU3RyaW5nJiBzdHJpbmcsIEZpbGVTeXN0ZW06OlNhbHQgc2FsdCkKQEAgLTExMSw2ICsxMTks
NTkgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6
Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXQKICAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVl
KTsKIH0KIAordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3Rv
cnkoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmln
aW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisg
ICAgbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcihvcmlnaW4pLmZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcihtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuZ2V0KCkpLmdldERpcmVjdG9y
eShjb25uZWN0aW9uLCBtX3F1ZXVlLmNvcHlSZWYoKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAg
aWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisK
KyAgICBoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZpbGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlm
TmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICgh
aGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+Z2V0RmlsZUhh
bmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0
b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgCisgICAgYXV0byBoYW5kbGUgPSBt
X2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsK
KyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6
bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUt
PmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1
cnNpdmVseSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5n
Pj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5k
bGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24p
OworCisgICAgaGFuZGxlLT5yZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3Rv
cmFnZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUw
YWQ4ZWY1MGExYjBhYzYzNzlkOGI5OTA0YjUzM2QzNGY2YTNkMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDb25u
ZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk9yaWdpblN0
b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNs
dWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBDbGllbnRPcmln
aW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIg
OiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgeworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2Fn
ZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdl
cj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwogCkBAIC00OCwx
NCArNTIsMjEgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cihQQUw6OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyKCk7CiAgICAgT3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFn
ZU1hbmFnZXIoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1l
c3NhZ2VSZWNlaXZlciAoaW1wbGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBk
aWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAg
IC8vIE1lc3NhZ2UgSGFuZGxlcnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBw
ZXJzaXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CiAgICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5
c3RlbUdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRP
cmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAg
IHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYs
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9u
YWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNp
dmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAgIFJl
ZjxXb3JrUXVldWU+IG1fcXVldWU7CkBAIC02Myw2ICs3NCw4IEBAIHByaXZhdGU6CiAgICAgRmls
ZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4s
IHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9y
YWdlTWFuYWdlcnM7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5p
cXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5h
Z2VyczsKKworICAgIFVuaXF1ZVJlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBt
X2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZl
YzI3MWUwZThkZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFh
MDY0NTM4NTE3ZTBjNzhjNmM1NGE0ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5tZXNzYWdlcy5pbgpAQCAtMjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIgewogICAgIFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2lu
IG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdl
YkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAg
ICBGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3Jp
Z2luKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgSXNTYW1lRW50cnkoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4g
KGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBHZXRE
aXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVu
dGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9y
KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1vdmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBk
ZWxldGVSZWN1cnNpdmVseSkgLT4gKGJvb2wgcmVtb3ZlZCwgZW51bTp1aW50OF90IFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChzdGQ6
Om9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBwYXRoLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5j
cHAKaW5kZXggNzVhMWFlZDI0OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2
NTE4MzhhMzEzOGM5M2JmNjliYmU1NTZhY2Q0ZmVlY2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuY3BwCkBAIC0yNiw2ICsyNiw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
T3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwog
bmFtZXNwYWNlIFdlYktpdCB7CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0
b3JhZ2VCdWNrZXRNb2RlIDogYm9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4
LDEyICs0MSwzNCBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIp
CiAgICAgewogICAgIH0KKwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJl
dHVybiBtX21vZGU7IH0KICAgICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkg
eyBtX21vZGUgPSBtb2RlOyB9CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25u
ZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5l
Y3Rpb25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdl
UGF0aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0
ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmll
cik7CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisg
ICAgeworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAg
ICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKwor
ICAgICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJp
dmF0ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwog
ICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZm
b3J0IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9m
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3Jp
Z2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAog
T3JpZ2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsK
IAotdm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikK
K3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRCdWNrZXQtPmNv
bm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0g
ICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0QnVja2V0KQog
ICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0
aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VC
dWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30K
Kwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAgbV9wZXJzaXN0
ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2Rl
OjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVja2V0KCkuZmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3Jp
Z2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0
YzE0ZWZkNjUyODlmMzAuLmJjNjJjZjQyMmY1YTM1ZGQyZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5T
dG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFu
YWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKTsKIAorICAg
IHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKICAgICBib29sIHBlcnNp
c3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOwogCiBwcml2YXRlOgogICAgIGVudW0g
Y2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwogICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7
CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tldCgpOwogCiAgICAgc3RkOjp1bmlxdWVf
cHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tldDsKICAgICBTdHJpbmcgbV9wYXRoOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0
b3JhZ2VNYW5hZ2VyLmgub3JpZyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU0MjE1YjNjNzAwYmQ0
OTlkMDZlM2I5MDRjMTRlZmQ2NTI4OWYzMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKQEAg
LTAsMCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBPcmlnaW5T
dG9yYWdlTWFuYWdlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6Cisg
ICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7CisgICAgfk9y
aWdpblN0b3JhZ2VNYW5hZ2VyKCk7CisKKyAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcGVyc2lzdGVkOyB9CisgICAgdm9pZCBwZXJzaXN0KCk7CisKK3ByaXZhdGU6CisgICAg
ZW51bSBjbGFzcyBTdG9yYWdlQnVja2V0TW9kZSA6IGJvb2w7CisgICAgY2xhc3MgU3RvcmFnZUJ1
Y2tldDsKKworICAgIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1bHRCdWNr
ZXQ7CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBib29sIG1fcGVyc2lzdGVkIHsgZmFsc2UgfTsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weQppbmRleCBlNWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJi
MTViLi4zZjkzNmQyNTI5MDJlNTI0NzhlYjgxMTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYg
dHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0
OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtP
YnNlcnZlcklEJywKICAgICAgICAgJ1dlYktpdDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3InLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlz
dGVuZXJJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVy
JywKICAgICAgICAgJ1dlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CmluZGV4IDkzZGJhNmNkOTYwYjA4OTFiMmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJl
OGZmZWVjNmM4Yjk1Y2ZkMTM5YTBmMGZhZjBjOTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1
LDYgKzExNSw5IEBAIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9y
ZS5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVy
Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKIApAQCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3Mv
VXNlckNvbnRlbnQvV2ViVXNlckNvbnRlbnRDb250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJB
dXRoZW50aWNhdGlvbi9XZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNz
L1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhuUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFm
NzZiMzg5NGU5MTdjNTI3YzRmOTM4ZmVlZDg2M2M3NzAxYzY5Li5kMTIwZTRhYzU0ZWNlODA4NTY1
MmIxYTljNTBlMDVjMWFjMzZiZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMsNyArMyw3IEBACiAJYXJjaGl2ZVZlcnNpb24gPSAx
OwogCWNsYXNzZXMgPSB7CiAJfTsKLQlvYmplY3RWZXJzaW9uID0gNTI7CisJb2JqZWN0VmVyc2lv
biA9IDU0OwogCW9iamVjdHMgPSB7CiAKIC8qIEJlZ2luIFBCWEFnZ3JlZ2F0ZVRhcmdldCBzZWN0
aW9uICovCkBAIC0xNDY5LDYgKzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1
REUwMjZFNUJDRkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBF
QzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQx
MzAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2
QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUy
NkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMz
QzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4
MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8q
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRp
YXRlQWN0aW9uQ29udHJvbGxlci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUg
LyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk5MzIzNjExRTFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0
eWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIz
NjExRDFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUsNiArMTQ4
OCw3IEBACiAJCTkzNTZGMkRGMjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERG
MjE1MUFERjQwMDdGNDU1RiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYy
RTAyMTUyQjc1MjAwRTZENURGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIx
NTFBREYzMDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsg
fTsKIAkJOTM1NkYyRTEyMTUyQjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRF
MTIxNTFBREY0MDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJ
OTM1QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1
Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmgg
Ki87IH07CiAJCTkzNUVFQjlCMTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVF
RUI5RjEyNzc2MUFDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAv
KiBTdG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyog
U3RvcmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkwNCw2ICs0
OTA4LDE0IEBACiAJCTkzMDg1RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJN
ZXNzYWdlc1JlcGxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1
MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlw
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25U
eXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMwLDggQEAK
IAkJOTM0MjU4OEYyNTU1RENBNTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1l
ZGlhUGVybWlzc2lvblV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTM0QjcyNDMxOUY1QjlCRTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdL
QnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAv
KiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURDMjI2RTFC
QjY1MDAwRUM2QTcgLyogc3RvcmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hp
bGRyZW4gPSAoCisJCQkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaCAqLywKKwkJCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5
OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAg
Ki8sCisJCQkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCAqLywKKwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0Qg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUx
QkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3
MjZFMUM2RUUwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8s
CkBAIC0xMDAwNiw2ICsxMDAyOCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8q
IGNvY29hICovLAogCQkJCTJEMjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJ
QkMxMTFBREUxMTJGNUI5QTAwMzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMx
QTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAq
LywKIAkJCQkxQTcyODQ0NDE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lv
bi5jcHAgKi8sCiAJCQkJMUE3Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNv
bnZlcnNpb24uaCAqLywKIAkJCQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxl
Qml0bWFwVXRpbGl0aWVzLmNwcCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJCQkJMUFB
NTc1RkIxNDk2QjUyNjAwQTRFRTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTcyRUJCRDcyNTM3RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JU
QVBJLmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlk
b1NlcnZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAv
KiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2
RjMzQzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYx
QTE4RTI1QUUxMDBDRTFGODggLyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5
MEMxRjQxMjY0RkQ3MTAwM0U0NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlDNTlDNEE1OTE4QjgxMTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlv
bi5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDc2YjllNjFmODUzMTc0NmQwOWMwOTliYjk5NjlhOTAwMTU5
MGI4MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRl
IDxXZWJDb3JlL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitSZWY8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eT4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
Y3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShpZGVudGlmaWVyLCBjb25uZWN0aW9uKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVyKQorICAg
ICwgbV9jb25uZWN0aW9uKG1ha2VSZWZQdHIoY29ubmVjdGlvbikpCit7Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y29ubmVjdGlvbkNsb3NlZCgpCit7CisgICAgbV9j
b25uZWN0aW9uID0gbnVsbHB0cjsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5Ojppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoRXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKwor
ICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOwor
ICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZh
bHNlKTsKKworICAgIGlmIChtX2lkZW50aWZpZXIgPT0gaWRlbnRpZmllcikKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6SXNTYW1lRW50cnko
bV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8Rmls
ZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAo
IW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlv
biB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5l
Y3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpHZXRGaWxlSGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBuYW1lLCBjb21wbGV0aW9uSGFu
ZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGhhbmRsZUlkZW50aWZpZXIs
IGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWhhbmRsZUlkZW50aWZpZXIpCisg
ICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgY29udmVydFRv
RXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0aW9u
KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IFVua25v
d25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGhhbmRs
ZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShoYW5kbGVJZGVudGlmaWVy
LnZhbHVlKCksICptX2Nvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihGaWxl
U3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUobmFtZSksIFdURk1vdmUoaGFuZGxlKSkp
OworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldERp
cmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24p
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb24geyBVbmtub3duRXJy
b3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RGlyZWN0b3J5
SGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBuYW1lLCBjb21wbGV0aW9uSGFuZGxlciA9IFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGhhbmRsZUlkZW50aWZpZXIsIGF1dG8gZXJy
b3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWhhbmRsZUlkZW50aWZpZXIpCisgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9u
Q29kZShlcnJvcikgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IFVua25vd25FcnJvciwg
IkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShoYW5kbGVJZGVudGlmaWVyLnZhbHVlKCks
ICptX2Nvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpjcmVhdGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShoYW5kbGUpKSk7Cisg
ICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50
cnkoU3RyaW5nJiYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4
Y2VwdGlvbiB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBt
X2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5
KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wg
cmVtb3ZlZCwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVtb3ZlZCkKKyAg
ICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb24geyBjb252ZXJ0VG9F
eGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0p
OworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29s
dmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChF
eGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihF
eGNlcHRpb24geyBVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAg
YXV0byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAg
aWYgKCFpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoVmVjdG9y
PFN0cmluZz4geyB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1l
c3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlJlc29sdmUobV9pZGVudGlmaWVyLCBtYWtl
T2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigq
aWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKV0oYXV0byBwYXRoLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFwYXRo
KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IGNvbnZl
cnRUb0V4Y2VwdGlvbkNvZGUoZXJyb3IpIH0pOworCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KFdURk1vdmUocGF0aC52YWx1ZSgpKSk7CisgICAgfSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40ZTQ2NTQ4YTAwYjRhZTA3NTkzYWI5MDUzNWQ0MTdlZWU2ZDZmOWQwCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApAQCAtMCwwICsxLDUzIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIu
aCIKKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg+CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5IGZpbmFsIDog
cHVibGljIFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsIHsKK3B1YmxpYzoKKyAgICBzdGF0
aWMgUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+IGNyZWF0ZShGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworICAgIHZvaWQgY29ubmVj
dGlvbkNsb3NlZCgpOworCitwcml2YXRlOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mKTsK
KworICAgIC8vIEZpbGVTeXN0ZW1IYW5kbGVJbXBsCisgICAgc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSB7IHJldHVybiBtX2lkZW50aWZpZXIudG9VSW50
NjQoKTsgfQorICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmKSBmaW5hbDsKKyAgICB2
b2lkIGdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNl
cHRpb25PcjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKKyAg
ICB2b2lkIHJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHks
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpIGZpbmFsOwor
ICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSBmaW5hbDsKKworICAgIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgUmVmUHRy
PElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcAppbmRleCA4ODk1MDhhYTZjNzMzMjFj
NDMzZGI1N2Q5MTE3M2U3MDQ2ODdlNDFhLi4wOGI2ZjMzY2M4YzA2NGFkNTQ1ODY4ZmRjNWVhNDg3
MzhjMjJlNGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKQEAgLTI2LDYgKzI2
LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJTdG9yYWdlQ29ubmVjdGlv
bi5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIgogI2luY2x1
ZGUgIk5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgpAQCAtNDgsNiArNDks
MjEgQEAgdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdChXZWJDb3JlOjpDbGllbnRP
cmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW4KICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlBlcnNpc3Qob3JpZ2lu
KSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCit2b2lkIFdlYlN0b3JhZ2VDb25u
ZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIGNvbm5lY3Rpb24g
PSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24o
KS5jb25uZWN0aW9uKCk7CisgICAgY29ubmVjdGlvbi5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6RmlsZVN5c3RlbUdldERpcmVjdG9yeShvcmlnaW4p
LCBbd2Vha0Nvbm5lY3Rpb24gPSBtYWtlV2Vha1B0cihjb25uZWN0aW9uKSwgY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byBpZGVudGlmaWVyLCBhdXRv
IGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFpZGVudGlmaWVyKQorICAgICAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNv
ZGUoZXJyb3IpIH0pOworCisgICAgICAgIGlmICghd2Vha0Nvbm5lY3Rpb24pCisgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29u
bmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8gaW1wbCA9IEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSgqaWRlbnRpZmllciwgKndlYWtDb25uZWN0aW9uKTsK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU6OmNyZWF0ZSh7IH0sIFdURk1vdmUoaW1wbCkpKTsKKyAgICB9KTsKK30KKwogSVBDOjpDb25u
ZWN0aW9uJiBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6Y29ubmVjdGlvbigpCiB7CiAgICAgcmV0dXJu
IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigp
LmNvbm5lY3Rpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKaW5kZXggMWMwZTY2MzY5
YjU2ZWRiNzBlOTNhODg5ZTMyNTAzNTY2NjkzMzZlNS4uNDc3NGE3YjA0YjFjY2Q4MGYyMTQ5OTgy
NmQ1NDc3NDYwM2M3MTYzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTMxLDYg
KzMxLDExIEBAIG5hbWVzcGFjZSBJUEMgewogY2xhc3MgQ29ubmVjdGlvbjsKIH0KIAorbmFtZXNw
YWNlIFdlYkNvcmUgewordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xh
c3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKK30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAK
IGNsYXNzIFdlYlN0b3JhZ2VDb25uZWN0aW9uIGZpbmFsIDogcHVibGljIFdlYkNvcmU6OlN0b3Jh
Z2VDb25uZWN0aW9uIHsKQEAgLTQwLDYgKzQ1LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICB2
b2lkIHBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJikgZmluYWw7CiAgICAgdm9pZCBwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9y
aWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lk
IGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgZmluYWw7CiAKICAgICBJUEM6OkNvbm5lY3Rpb24m
IGNvbm5lY3Rpb24oKTsKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzUxYTFmOGVkNzYzNGRkZTE5MWI0MGI5NmI1MWUz
MjVkMDMxMDU4Mi4uZmQ5YWU3MTgyOTg4OWYwNzU2N2QxMjJkMTM3MWI4MGEyZmUxMDViNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBw
bGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFj
Y2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogVGVzdEV4cGVjdGF0aW9uczogRW5hYmxlIHRlc3RzIG9ubHkgb24gV0syIHBsYXRmb3JtcyB3
aGVyZSBpdCBoYXMgdGhlIGltcGxlbWVudGF0aW9uLgorICAgICAgICAqIHBsYXRmb3JtL3drMi9U
ZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3Jh
Z2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4K
KwogMjAyMS0wOS0yMCAgQXl1bWkgS29qaW1hICA8YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSRUdSRVNTSU9OIChyMjgxMTAyPyk6IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2st
aW4tYmFuZC5odG1sIGlzIGEgZmxha3kgdGltZW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IDM0MzdhNWUxNDdkN2RkYTQwZDFiZTliY2M3MTA5YTI2ODA1YWUyYWMuLmU0NTNl
ZDlmYjZhODhhZTU1OGUwZTFjOGFhMjEzOWViMWUyOGM2ZjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1
aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUg
U3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3RzLiBUaGVzZSB0ZXN0cyBhcmUgbm90
IHBhc3NpbmcgYXMgc29tZSBmdW5jdGlvbnMsIGxpa2UgZGlyZWN0b3J5IGl0ZXJhdGlvbiBhcmUg
bm90IAorICAgICAgICBpbXBsZW1lbnRlZCB5ZXQuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENo
YW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0
LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFj
Y2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQ6CisKIDIwMjEtMDktMjAgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBw
bGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBpbnB1dC1zZWN1cml0eQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKaW5kZXggZjVkY2FjZDFlMmExNzNlZWRmYWJjMDE2NGJkY2ZmMWM3ZWE5ZTQ3Yy4uZTRiM2Rj
YTQyNTVkMzBlYzliYWU4MGIyMTA4YzU3ZmE3MTI3NmE2MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBA
IC0yMDAsNiArMjAwLDcgQEAgZmFzdC9zcGVlY2hyZWNvZ25pdGlvbi9pb3MvIFsgU2tpcCBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFNraXAgXQogaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFNraXAgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgU2tpcCBdCitzdG9y
YWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvIFsgU2tpcCBdCiAKICMgYXBwLXByaXZhY3ktcmVwb3J0IHRl
c3RzIHJlbHkgb24gV2ViS2l0QWRkaXRpb25zCiBodHRwL3Rlc3RzL2FwcC1wcml2YWN5LXJlcG9y
dC8gWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dAppbmRleCA2OTBkMjc5MzQyZTZhOGQ5NDk5NjkxYjE5ZjVjZDk2NjRiYjQwMDk2Li4xYjRk
YzhiNmRhODI2ZDVkZjIzZTdmYTg5N2ZkMWVhNjczYjRlZDJlIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9v
cGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVl
LW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0yLDUgKzIsNSBAQAogUEFTUyBz
aG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCBiZSB1bmRlZmluZWQgZm9yIGRhdGEgVVJJIGlmcmFt
ZXMuCiBQQVNTIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgbXVzdCBiZSB1bmRlZmluZWQgZm9y
IGRhdGEgVVJJIGlmcmFtZXMuCiBGQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgp
IGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgaWZy
YW1lLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpF
Q1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBFWENF
UFRJT046IFR5cGVFcnJvciIKLUZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkg
YW5kIHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBvcGVu
ZWQgd2luZG93LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigp
OiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAibmF2aWdhdG9yLnN0b3JhZ2UuZ2V0
RGlyZWN0b3J5KCk6IFJFSkVDVEVEOiBOb3RTdXBwb3J0ZWRFcnJvciIKK0ZBSUwgbmF2aWdhdG9y
LnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJl
amVjdCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdv
dCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046IFR5cGVFcnJvciIKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDQxMjRiN2JlNGRjZGFhZDRh
YjkzMDc5ZGIyZGMwZGUxYzMyNzJlYjQuLjIxNWFiNjYwYmQwNGJlYmViNjU0ZjgyZjM2ZWExMzM3
ZTBiMDJhNzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAg
LTEsNyArMSw3IEBACiAKLUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBm
cm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNh
Y3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRs
ZXMgYW5kIGJsb2JzIGluIEluZGV4ZWREQi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCB1c2luZyBhIGN1cnNv
ci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlIGlu
IEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIHBlbmRp
bmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUg
aGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlvbi4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGVzIGFuZCBibG9icyBpbiBJ
bmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxl
IGluIEluZGV4ZWREQiBhbmQgcmVhZCB1c2luZyBhIGN1cnNvci4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIHVzaW5nIGlubGluZSBr
ZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggODE1ZTc1ZjYzMmQ0ZWZjYzhkNmIyMTkzNDMy
YmEwY2NmZDkxNDQzOC4uODM3ZWFlMTA2MjhlZGY5M2YxNzU2OGNiOTIzMGJhMmNiOGQzMzVjNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVu
dHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAg
KzEsMTAgQEAKIAotRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5k
bGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBp
c1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVzIHJldHVybnMgZmFsc2UgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVu
dCBoYW5kbGVzIGZvciB0aGUgc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxlIGhhbmRsZXMgcmV0
dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVu
dHJ5IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMgZm9y
IHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNT
YW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0
b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
aXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBp
ZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUg
aGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBp
c1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMg
Zm9yIHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1Nh
bWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3Rv
cnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2Ft
ZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cmlu
ZGV4IGUzY2E3YzQ2ODgyNTBmNDQ3MTU4NjUyMmE4ODljZGVhZmVmZDFmODQuLjM5NWVjYTU1NGJk
ZDdiOGFiMDIyZWQ1MmM5MmQ0NDMxZGMxMmEzYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZyYW1lLCBkZWRpY2F0ZWQgd29ya2VyIGFu
ZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFu
IGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3Iu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3YWY0MTE4MzFkYzBmYjZjYjI2NWI4NDNi
MmIwY2VmNzAzYTAwNGMzLi40YjFjNWJlM2I3N2Q4ZjdiNjMwNDZmOWEwYTEyZGVhNmM0ODI4ODE1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgdG8gYSBzYW5kYm94
ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRv
IHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgaWZyYW1l
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVz
c2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
RmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBp
biBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0
byBzZW5kIG1lc3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNy
b3NzIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFp
bCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3Nh
Z2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
RmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRv
IHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBw
b3J0IGluIGEgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwg
dG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2Ug
cG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0
LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDUzZTkwZTIzYzQ5MWY1ODhk
MWI1YjZlYmVjMjEyMmQ3YWNjZTgwNmIuLjgyMWM2MWM5ZjRmMWVhNGZiMTVjZTExMWQ5ZmMyZjcw
NmEwYmJjNGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Ut
TWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2
IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9y
dCBpbiBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBp
biBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
biBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBv
cmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2Ft
ZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIGlmcmFt
ZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggZTVkZWMwOGE5NTNjYTQwNmUxYTRmNTk4ZGQ4ZTQ0ZjBhYTc5NzdiNS4uYTkzODQ3ZDAw
MzViM2JmN2VhYjU1OWUwNDgwNDVkMDZjYjA2YjU4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
aW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVz
c2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDQ1MTA2NWUz
MjJkYWZlMDRiZWFlMjE0OWU1MTQwYWE2NWMzNmY3MGQuLjM3MjIzYzJlNDM4MTIwNmUxNzQyOTM1
YzJjODRkNWM3Nzg3ODIxZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApA
QCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
bWVzc2FnZSBwb3J0IGluIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIEZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggODY0NWQ5
M2VlNTcyMTU3OWJiOWVmYzUyODI0NjQ0NDk3MjVjMTNlNy4uM2NlOWU4MzIyMGVkZDJiYmZhNzQ2
ZDRjZWIyOTRkNjcwYTdkNWM1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1m
cmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdp
biBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNy
Y2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBmMDk1
OTk1ODk2M2YyZjRkNmE5N2U4YTdiYTczNzRmYjUxZTgyZDRmLi42ZDk2MjY1ODQxOThiZTkwNzgx
ZWZjOTdiMWQwZmRjOGZiMWY4YTg2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNh
bWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNzJm
ZjNmNTc0MTJkZDA4ZWM2YTRiZjNjMDVmYzM2OGI4OWFmYWE2Ni4uODAyYmI2MTdmMmVhOGE2MTlm
N2U1YmJlNWYwNmFlMGIzNmM3YWY3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1G
QUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQg
d29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2hhcmVkIHdv
cmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDRjYTBmOTQ3MTBjOGUzZTA1Zjk1YTA3NDcwOWNkODdh
MDdiMjg1N2QuLjdlNjYxY2UwZjc5MzRmNjkzZDI2ZjM5MTdlMDc2ODQwZTcxY2RmOWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5IEBACiAKLUZBSUwg
cmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSB0byByZW1vdmUg
YW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1w
dHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUg
YWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFk
eSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCByZW1vdmUoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVj
dG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92
ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNo
b3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUgb3B0aW9u
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAxZmM0NzQ4
MDYyM2VhYjkzYmM5NmE5MzEwYTdjNTY2M2Y4NTg4MjMwLi43ODE3MWZmMGU0ODc4ZWI0ODk5MDE1
MDljZWI0NTgzZDg1N2E2Njg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJl
Y3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1G
QUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlz
dGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGlyZWN0b3J5
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVl
KSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEg
ZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1l
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBh
IHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9yeSBleGlzdHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSB3
aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZB
SUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0
aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9
ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhp
c3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFkeSBleGlz
dHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggIi4u
IiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9y
eSBleGlzdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAppbmRleCAzMzZlNGRjNzM5MWIwODNmZDA0YWJiODE2NGJmMjYwYjBj
ZWQxNWQ4Li5hZTU1ZDEzNGQyNzQyNWUwN2NhMWM4NmZhNjdhNmZkNGNlODdmNTRlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFu
ZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDEzICsxLDEzIEBACiAKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVj
dHMgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGZpbGUg
Zm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0
ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1
ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGgg
ZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxl
SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRo
IHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2Vw
YXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVh
dGVzIGFuIGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4
aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhh
bmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRob3V0IGVyYXNpbmcg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10
cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoIGVt
cHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxl
KCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hl
biB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA5MmJhMDA2MWMxMTJkYjk5YTY5NmMwM2ZiNGFiMGE4NzEwYWIz
YmUxLi5mZTFmZmE5YzQ1YmY3ODkxOGM2OGJkODEyMjlkNzJlZTAzMDZhNGM1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw4ICsxLDgg
QEAKIAotRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9lc24ndCBjcmFz
aCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBAQGFzeW5jSXRlcmF0b3I6
IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXRlcmF0aW9uIHdoaWxlIGl0ZXJh
dG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3QgY3Jhc2gg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBAQGFzeW5jSXRlcmF0b3I6IGZ1bGwg
aXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZW50cmll
czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxl
Y3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1y
ZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGFjNmZjMTk0ODQ3OWMxN2Q5
OGIwMzhiNzQ3ZDZiOTMwNmRiYzA5MmMuLjI4MTQ3MjI1YmRhODQ5MjhkYzMyNjc2NDEwMGE0OWZm
ZGEyYmMwMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dApAQCAtMSwxMSArMSwxMSBAQAogCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVt
b3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVF
bnRyeSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGFuIGVt
cHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5
IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1wdHkgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRy
eSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggYSBw
YXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmls
ZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVu
dHJ5KCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBv
biBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1wdHkg
bmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92
ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggYSBwYXRo
IHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNv
bHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNTU3MWYx
MWQxY2YwMGQxMzllZmE5ZjhkYzZlOGM0MmMwYjFiMzM0MC4uZjVlNjUxYjFlZjFjN2YxMTk1YzZh
NTdhMDcyNzM2NDIyNzEzYzI2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBSZXNvbHZlIHJldHVybnMgZW1w
dHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCB3aXRoIG5v
bi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5IGFycmF5
IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJl
c29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3Rl
cnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgbnVs
bCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0
ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2lu
ZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1j
cmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZl
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMzMwMTBkNzE4NDUyMmJiMzcwNWViMzhiNzM0YTNm
YTBkMjY4NjZmYy4uM2I4YzBkOGRhYjAxODBlOTIzYzQ0Mzk3ZjY0MWM2NWRjYWU3ZmQ5MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5j
LWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3Jl
YXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53
aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEF0dGVtcHQgdG8gY3Jl
YXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRsZS4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAppbmRleCA5Y2YwMTlkMjU2OWNmZjQ5OGMxMDRmMTVjN2FmYWRhMWMxOTdhNmM3Li5mN2MxNzA3
M2FlZWZmOWFhZjBiNzI4Y2NiZTJhYjhlMWRkNjFhNTc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgZ2V0RmlsZSgpIHByb3Zp
ZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGUoKSBwcm92aWRlcyBhIGZpbGUg
dGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZp
bGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggYTA2OTI2NjFkZDIzZDEwYzA5ZmZkNTllNmRiZTBiMGM4ZTJjNjBiYS4uZDE1MjZjNTk5
NTg2NjI1ZjMxNmE3Njc5OGY3MDE3NDhiODQ2ZmVlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1w
aXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZBSUwgY2Fu
IGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRo
IGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRo
IG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBB
cnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBl
ZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBi
ZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0g
b2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3Jp
dGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CmluZGV4IGY5N2U4MTJkNzcyYTY1NTE1N2E1ZGFjZWZjMTM1ZmMwNjZiMGEyMmMuLjM3
ZjdhNjRhZTlhNWYwMWRkZDg3ZjRhY2RhODc5YTU0YjY2NjQ4ZTggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVT
dHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzMSArMSwzMSBAQAogCi1G
QUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkg
ZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGgg
V3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8gYW4gZW1wdHkg
ZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCBjb25zZWN1
dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3Jp
dGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5kcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdp
dGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFuZCBhIHZhbGlkIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxl
ZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQgYmV5b25kIHRoZSBl
bmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3Jp
dGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04IHN0cmlu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBz
dHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxp
bmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJl
bW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRl
czogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xvc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGFm
dGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
YXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5IHN1Y2NlZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogd3JpdGFi
bGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBpZiBmaWxlIGlzIHJl
bW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0V3JpdGVyKCkg
Y2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQ
YXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBhcmFtIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiBzZWVrIG1p
c3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3VsZCBy
ZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgd3JpdGUoKSB3aXRo
IGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMgd2l0aG91dCBwb3Np
dGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBm
aWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3
cml0ZSgpIGNhbGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0
cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBX
cml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFuZCBh
IHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkg
Y2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9uZCB0aGUg
ZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdXRmLTggc3RyaW5nIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGgg
dW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxpbmUgZW5kaW5nIHByZXNl
cnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBl
bXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZlciBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFp
bHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBh
dG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xv
c2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0
ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3BlcmF0aW9uIG1heSBz
dWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczog
d3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBpZiBmaWxl
IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRXcml0ZXIo
KSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFy
YW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBhcmFtIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHNlZWsgbWlzc2luZyBwb3Np
dGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0
aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVqZWN0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKaW5kZXggNTAwOTI1NGE0ZjEwZTI3OTNiZDY0Yzg0MTk1NTkyNDUyMTJmMmQxMS4uZTM4NTFm
Y2EzM2U0YzlkODM5NjE5MWI2ZDFkYmFlYWNmMGRhMzg5NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgdHJ1bmNhdGUoKSB0
byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHRy
dW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGZhaWxz
IHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlz
IHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3Jp
dGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiBmYWxz
ZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBlbXB0eSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlv
bjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwgc3RyZWFt
IGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCitGQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFy
ZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQg
ZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBj
cmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3JpdGFibGUg
ZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTog
ZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGN1cnNvciBwb3NpdGlv
bjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBpcyB1bmxv
Y2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDIxZGVkNTQ5
OTZlN2YwYWNjODgwNmZhN2U3ZTlhMjdlN2NmY2U0Ni4uZDhkY2ViZTQ4NzEwMjMwOTM0NTNhZmFm
YjhmM2QyNzJiZGY5M2Y2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTg2NCwzICs4NjQsNSBAQCBmdWxsc2NyZWVuL2Z1bGwtc2NyZWVuLWVudGVyLXdo
aWxlLWV4aXRpbmcuaHRtbCBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJtaXNzaW9ucy8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c3RvcmFnZS8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzLyBbIFBhc3MgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFBhc3Mg
XQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGly
ZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iZWVmN2I2ZWM3Y2RiMGE2ZTEzMjEzMDliYWZmMDVlOTQ5NDExYmZkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9y
eS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitUaGlzIHRlc3Qg
Y2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJvb3RIYW5kbGUubmFtZSBp
cyAiIgorUEFTUyByb290SGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BBU1MgZGlySGFuZGxl
Lm5hbWUgaXMgImRpciIKK1BBU1MgZGlySGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BBU1Mg
aXNTYW1lRW50cnkgaXMgZmFsc2UKK1BBU1MgZmlsZUhhbmRsZS5uYW1lIGlzICJmaWxlIgorUEFT
UyBmaWxlSGFuZGxlLmtpbmQgaXMgImZpbGUiCitQQVNTIGhhbmRsZU5hbWVzLmxlbmd0aCBpcyAy
CitQQVNTIGhhbmRsZU5hbWVzWzBdIGlzICJkaXIiCitQQVNTIGhhbmRsZU5hbWVzWzFdIGlzICJm
aWxlIgorUEFTUyBjcmVhdGVFcnJvci50b1N0cmluZygpIGlzICJOb3RGb3VuZEVycm9yOiBUaGUg
b2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4iCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44MzczZDg2ZTM3ZWVkODUxNGY0Mzc2MzRlZmQ0ZTMwYThmODBmZGM0Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2Rp
cmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKQEAgLTAsMCArMSwxMDAgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigi
VGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLiIpOworCit2YXIgcm9vdEhhbmRsZSwgZGlySGFuZGxlLCBmaWxlSGFuZGxlLCBp
c1NhbWVFbnRyeSwgaGFuZGxlTmFtZXMsIGNyZWF0ZUVycm9yOworCitmdW5jdGlvbiBmaW5pc2hU
ZXN0KGVycm9yKQoreworICAgIGlmIChlcnJvcikgeworICAgICAgICB0ZXN0RmFpbGVkKGVycm9y
KTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGdldERpcmVjdG9y
eSgpIHsKKyAgICBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKS50aGVuKChoYW5kbGUp
ID0+IHsKKyAgICAgICAgcm9vdEhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyb290SGFuZGxlLm5hbWUiLCAiIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicm9vdEhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjcmVhdGVE
aXJlY3RvcnlIYW5kbGUocm9vdEhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7Cisg
ICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjcmVhdGVE
aXJlY3RvcnlIYW5kbGUoZnJvbUhhbmRsZSkgeworICAgIGZyb21IYW5kbGUuZ2V0RGlyZWN0b3J5
SGFuZGxlKCJkaXIiLCB7ICJjcmVhdGUiIDogdHJ1ZSB9KS50aGVuKChoYW5kbGUpID0+IHsKKyAg
ICAgICAgZGlySGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImRpckhhbmRsZS5uYW1lIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImRpckhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjaGVja0lmU2FtZUVudHJ5
KHJvb3RIYW5kbGUsIGRpckhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAg
ICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjaGVja0lmU2Ft
ZUVudHJ5KGhhbmRsZTEsIGhhbmRsZTIpCit7CisgICAgaGFuZGxlMS5pc1NhbWVFbnRyeShoYW5k
bGUyKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaXNTYW1lRW50cnkgPSByZXN1bHQ7Cisg
ICAgICAgIHNob3VsZEJlRmFsc2UoImlzU2FtZUVudHJ5Iik7CisgICAgICAgIGNyZWF0ZUZpbGVI
YW5kbGUoZGlySGFuZGxlLCB0cnVlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAg
ICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIGNyZWF0ZUZpbGVI
YW5kbGUoZnJvbUhhbmRsZSwgY3JlYXRlKSB7CisgICAgbGV0IG9wdGlvbnMgPSB7ICJjcmVhdGUi
IDogY3JlYXRlIH07CisgICAgZnJvbUhhbmRsZS5nZXRGaWxlSGFuZGxlKCJmaWxlIiwgb3B0aW9u
cykudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGZpbGVIYW5kbGUgPSBoYW5kbGU7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5uYW1lIiwgImZpbGUiKTsKKyAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLmtpbmQiLCAiZmlsZSIpOwor
ICAgICAgICByZXNvbHZlUGF0aCgpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAg
ICBpZiAoY3JlYXRlKSB7CisgICAgICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBjcmVhdGVFcnJvciA9IGVycm9yOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNyZWF0ZUVycm9yLnRvU3RyaW5nKCkiLCAiTm90
Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUuIik7CisgICAgICAg
IGZpbmlzaFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVzb2x2ZVBhdGgoKSB7Cisg
ICAgcm9vdEhhbmRsZS5yZXNvbHZlKGZpbGVIYW5kbGUpLnRoZW4oKHJlc3VsdCkgPT4geworICAg
ICAgICBoYW5kbGVOYW1lcyA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmUoImhhbmRsZU5hbWVz
Lmxlbmd0aCIsICIyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFuZGxlTmFt
ZXNbMF0iLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFuZGxlTmFt
ZXNbMV0iLCAiZmlsZSIpOworICAgICAgICByZW1vdmVFbnRyeShkaXJIYW5kbGUsICJmaWxlIik7
CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOwor
ICAgIH0pOworfQorCitmdW5jdGlvbiByZW1vdmVFbnRyeShmcm9tSGFuZGxlLCBuYW1lKSB7Cisg
ICAgZnJvbUhhbmRsZS5yZW1vdmVFbnRyeShuYW1lKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAg
ICAgLy8gTm8gZXJyb3IgbWVhbnMgaXQgaXMgcmVtb3ZlZC4KKyAgICAgICAgY3JlYXRlRmlsZUhh
bmRsZShkaXJIYW5kbGUsIGZhbHNlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAg
ICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2lmICh3aW5kb3cudGVzdFJ1bm5l
cikgeworICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGdldERpcmVjdG9yeSgpOworfSBl
bHNlIHsKKyAgICBmaW5pc2hUZXN0KCJ3aW5kb3cudGVzdFJ1bm5lciBpcyBub3QgYXZhaWxhYmxl
Iik7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438725</attachid>
            <date>2021-09-20 13:57:00 -0700</date>
            <delta_ts>2021-09-20 15:11:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920135659.patch</filename>
            <type>text/plain</type>
            <size>184789</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uOTE1ZjA3MTc3Mjc0NDU4MTBiZjBmNjllMzg5OTMw
Y2I2NTk0MGNmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuIEZpbGVT
eXN0ZW1IYW5kbGUgaXMgc3ViY2xhc3NlZCwgc28gd2UgbmVlZCB0byBhZGQgY3VzdG9tIAorICAg
ICAgICB3cmFwcGVyIGZ1bmN0aW9uIHRvIGNvbnN0cnVjdCB0aGUgcmlnaHQgd3JhcHBlci4KKyAg
ICAgICAgYmFzZWQgb24gdHlwZS4KKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAo
V2ViQ29yZTo6dG9KU05ld2x5Q3JlYXRlZCk6CisKIDIwMjEtMDktMjAgIEplciBOb2JsZSAgPGpl
ci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtlIEFWU2FtcGxlQnVmZmVy
VmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVyZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBi
MWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi40NGMwMDYzMzBlYzU2MDhj
YTYwYzE3OGRkMTE2NTAyNjQ0ZWM4YTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDgxIEBACisyMDIx
LTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBp
bml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVjZSBjbGFzcyBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lzdGVtSGFuZGxl
IGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpjb252ZXJ0VG9F
eGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToKKyAgICAgICAg
KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29sdmUpOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaDog
QWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppZGVudGlm
aWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnBh
dGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cXVl
dWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFkZGVkLgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpyZWdpc3Rlckhh
bmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6
OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA6IEFkZGVk
LgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVkLgorICAgICAg
ICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZp
bmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6
Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlv
bkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0
QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3Qp
OgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3Jh
Z2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9y
YWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3Nh
Z2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6
CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9u
Q2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDogQWRkZWQu
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVt
R2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0
b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9o
c2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRlU2hhcmVhYmxl
Qml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXgg
ZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAyZDViMDk3YzM0
MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00MCw2ICs0
MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVz
L2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAgICAgTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVsZXMvZ2VvbG9j
YXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEyZTEuLmRiYjA4
YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKIAorI2luY2x1
ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJy
ZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGlu
ZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lN
UEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkK
K1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwp
CiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShX
VEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFt
ZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0
b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6
RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiwgc3Rk
OjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4sIERP
TVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmIHBy
b21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoU3Ry
aW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRG
aWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxl
U3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNl
cHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0ZSA6IGZhbHNl
OworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9t
aXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAot
dm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoY29uc3Qg
U3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJl
Y3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRpb25zLCBET01Q
cm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYm
IHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVk
RXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0RGly
ZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9
IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJl
c3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChy
ZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJlc29sdmUocmVz
dWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6Om9wdGlvbmFs
PEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVm
ZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpy
ZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lk
PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9y
dGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxldGVSZWN1cnNp
dmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAgICBpbXBsKCku
cmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtwcm9taXNlID0g
V1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBwcm9taXNl
LnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21p
c2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2UpCit2b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxl
LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNl
KQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAi
Tm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRsZS5pbXBsKCks
IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAg
ICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2Uu
cmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaApp
bmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43YzQ3ZTc1NWVj
MGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAgV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1YmxpYzoKICAgICBz
dHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1YmxpYzoKICAgICAg
ICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAgdm9pZCBnZXRG
aWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRGaWxlT3B0aW9u
cz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+
PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIHN0
ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJ
bnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZvaWQgcmVtb3Zl
RW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlvbnM+LCBE
T01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNvbnN0IEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7Cisg
ICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0Rmls
ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxl
SGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwg
c3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElE
TEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAgdm9pZCByZW1v
dmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5k
bGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4mJik7CiAK
IHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0
ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lB
TElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
KQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxl
JiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUxMzM0ZjMwNzcw
ZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2VhMjVhZDA5ZjBl
MTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgog
CisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21p
c2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTMz
LDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRmlsZUhhbmRs
ZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQorUmVmPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsKKyAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZN
b3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhh
bmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVI
YW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lz
dGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlkYzM5OTFjMDRl
M2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3MgRmlsZTsKIGNs
YXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUg
ewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogcHVi
bGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcm
Jik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4g
Y3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQg
Z2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYmKTsKIAogcHJp
dmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJik7CisgICAg
RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
Jik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJ
VFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3RhdGljIGJvb2wg
aXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkgeyByZXR1cm4g
aGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlOyB9
CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKaW5k
ZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3NDQ4Y2ZlNWE2
MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcApA
QCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FM
TE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFuZGxlOjpGaWxl
U3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSkK
K0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkK
ICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkpCisgICAgLCBt
X2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1Nh
bWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJv
b2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVtSGFuZGxlKCkg
PSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0
ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlz
ZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwg
Ik5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRsZS5raW5kKCkg
fHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlc29s
dmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1wbCgpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAg
cHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5YmI2MzdmMTdm
MDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1OTRhMDU4MzQy
ZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZl
cnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNzIFBlcm1pc3Np
b25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBwdWJsaWMgUmVm
Q291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChG
aWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxl
KCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAgRmlsZSwKICAg
ICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUo
KSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0K
ICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICBG
aWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQoKTsgfQogCi0g
ICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhh
bmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJvdGVjdGVkOgot
ICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAgRmlsZVN5c3Rl
bUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYp
OwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9OwogICAgIFN0cmlu
ZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5kZXggMjA4ZTc0
NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYzYzVjODc3ZGU2
ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApAQCAtMjksNiAr
MjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAgICBDdXN0b21U
b0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVuYWJsZWRCeVNl
dHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUlt
cGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1NDcwNTA4YWY3
ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIu
aD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xh
c3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDogcHVibGljIFJl
ZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5G
aWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRpb25hbDx1aW50
NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGlz
U2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChF
eGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRGaWxlSGFu
ZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJv
b2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8
UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwg
dm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdl
L0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIzMWY5NGI2NmFm
MDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFhYTU0NjExMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVBy
b3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFn
ZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAgIHsKICAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAgICAgICAKKyAg
ICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYmLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOworICAgICAgICB9
CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVjdGlvbigpIGZp
bmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZUNv
bm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVj
dGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhjNzU1MzMuLjY2
ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBAIC0yNSwxMSAr
MjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAjaW5jbHVkZSA8
d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIGNsYXNz
IFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNvbm5lY3Rpb24+
IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0
aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2lu
JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4m
JikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9y
aWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
Y3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLjdjMTY4
OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAg
QEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2lu
LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNl
LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFu
YWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQor
c3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2Vw
dGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4g
cHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3Ig
ZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBj
b250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAo
IWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJf
cyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAg
ICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAK
LSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICgh
b3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVj
dGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9y
aWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4o
KS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBj
b25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5lY3Rpb25JbmZv
Lm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11
dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAgICB9KTsKIH0K
IAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9v
bGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVy
biBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRv
ciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRp
b24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9u
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlv
bkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0byBjb250ZXh0
ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBpZiAoIWNvbnRl
eHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBhdXRvIGNvbm5l
Y3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICghY29ubmVjdGlv
bikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8qIG9y
aWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmlnaW4pCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNp
c3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9t
aXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1
dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1
cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3Qo
V1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlz
ZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHBl
cnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1B
Y2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygp
OworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAg
ICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxl
YXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25J
bmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rp
b25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3ZlKGNvbm5lY3Rp
b25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQp
IG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAg
ICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisg
ICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAg
IH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4
Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5
ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdl
TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNz
IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAK
IGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+
IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcg
KzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2Vy
KE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNl
cHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5h
dmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMy
Y2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3
NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJp
bmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2Fn
ZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmlu
ZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3Vz
dG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRp
bmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFk
OGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBj
MTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNE
QTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25S
dWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAw
MTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDEx
MDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dy
b3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5
c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUz
QkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1
QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNG
NUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRB
cmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8q
IG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICov
OyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8q
IFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07
CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQw
RDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkz
NDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3Mu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdE
MjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsg
fTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5
QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07
Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRE
NjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyog
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5k
bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5
QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQw
MDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3Rl
bUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJD
ODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNw
ZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAq
LzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0
ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZl
LmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkz
NDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
aW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2
NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4
MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRM
aXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0
TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRF
OTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYw
MDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4
MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0
OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFB
MUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywK
IAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3Rv
bS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0Vs
ZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hU
TUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5
MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJ
OTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5
MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJ
OTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJ
CQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1B
Y2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFu
YWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBA
CiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBp
biBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVt
RmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhG
IC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FD
OUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywK
IAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRs
ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5k
bGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3Njcy
N2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJK
U0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlND
OjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3
cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlND
OjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkK
K3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkK
KyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4o
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBw
ZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsK
K30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZmMzNTJlODRi
NTQyMzliYTI4NmU0NjE0YWYzODI3M2Y5MTZhYTJjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApA
QCAtMCwwICsxLDcyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxX
ZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDog
dWludDhfdCB7CisgICAgRW1wdHksCisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1l
LAorICAgIEludmFsaWRNb2RpZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25v
d24KK307CisKK2lubGluZSBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlv
bkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9y
KSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAg
ICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNh
c2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAg
cmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAg
cmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0Ogor
ICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAg
IH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1w
bGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4g
eworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
OjpFbXB0eSwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90
Rm91bmQsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5h
bWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlm
aWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlz
bWF0Y2gsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgor
ICAgID47Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmI3Yjg3NDNkZjlkNTMzZDE0MDA1NDgwYjdmZjY5NDgyZWQ3NTkw
MDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTM2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAi
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYg
T1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UK
K2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZSwgUmVmPFdvcmtRdWV1ZT4mJiBxdWV1ZSkKKyAgICA6IG1faWRlbnRpZmllcihG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI6OmdlbmVyYXRlKCkpCisgICAgLCBtX21h
bmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAgICAsIG1f
cGF0aChwYXRoKQorICAgICwgbV9uYW1lKG5hbWUpCisgICAgLCBtX3F1ZXVlKFdURk1vdmUocXVl
dWUpKQoreworICAgIEFTU0VSVCghbV9wYXRoLmlzRW1wdHkoKSk7CisKKyAgICBzd2l0Y2ggKG1f
dHlwZSkgeworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9y
eToKKyAgICAgICAgRmlsZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKG1fcGF0aCk7CisgICAg
ICAgIHJldHVybjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxl
OgorICAgICAgICBpZiAoRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhtX3BhdGgpKQorICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW06Om9wZW5GaWxlKG1f
cGF0aCwgRmlsZVN5c3RlbTo6RmlsZU9wZW5Nb2RlOjpXcml0ZSk7CisgICAgICAgIEZpbGVTeXN0
ZW06OmNsb3NlRmlsZShoYW5kbGUpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgYXV0byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOwor
ICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKG1fcGF0aCA9PSBwYXRoKTsKK30KKwor
dm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNv
bm5lY3Rpb24mIGNvbm5lY3Rpb24sIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0
Y2gpOworCisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisg
ICAgLy8gaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3ZhbGlkLWZp
bGUtbmFtZQorICAgIGlmIChuYW1lID09ICIuIiB8fCBuYW1lID09ICIuLiIgfHwgbmFtZS5jb250
YWlucyhwYXRoU2VwYXJhdG9yKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0
ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpOworCisgICAg
YXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwg
bmFtZSk7CisgICAgbV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgdHlwZSwgbV9x
dWV1ZS5nZXQoKSwgcGF0aCwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0Rmls
ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwg
Ym9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlv
bmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUo
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUsIG5hbWUsIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rp
b24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBuYW1lLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVs
ZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV90
eXBlICE9IFR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0
byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFt
ZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYg
KCF0eXBlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3VuZCk7CisKKyAgICBzd2l0Y2ggKHR5cGUudmFsdWUo
KSkgeworICAgIGNhc2UgRmlsZVN5c3RlbTo6RmlsZVR5cGU6OlJlZ3VsYXI6CisgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtOjpkZWxldGVGaWxlKHBhdGgpLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KQorICAgICAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0
b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtOjpkZWxldGVOb25FbXB0eURpcmVjdG9yeShw
YXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHkpOworICAgIGRlZmF1bHQ6CisgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisgICAgfQorfQorCit2
b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fbWFuYWdlcikKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bik7CisKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7Cisg
ICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
c3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGlm
ICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsK
KworICAgIGF1dG8gcmVzdFBhdGggPSBwYXRoLnN1YnN0cmluZyhtX3BhdGgubGVuZ3RoKCkpOwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3RQYXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTE0ZWE4MjY2ZTRmOGU0MWRl
MzhmYzFkNjZhZmFhZTVhNGExZjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCAr
MSw2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlv
bi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
ciA6IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENh
bk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRp
YWxpemF0aW9uOjpFYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGlj
OgorICAgIGVudW0gY2xhc3MgVHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBj
b25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgUmVmPFdvcmtRdWV1ZT4mJik7
CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIGNvbnN0IFN0cmluZyYgcGF0aCgpIGNv
bnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorICAgIFdvcmtRdWV1ZSYgcXVldWUoKSBjb25zdCB7IHJl
dHVybiBtX3F1ZXVlLmdldCgpOyB9CisKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOwor
ICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vy
c2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKK3ByaXZhdGU6CisgICAgdm9pZCByZXF1
ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFR5cGUsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBt
X2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFu
YWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBt
X25hbWU7CisgICAgUmVmPFdvcmtRdWV1ZT4gbV9xdWV1ZTsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY0MjcxN2U3MWRkODlhYTY0MTI2MmU4YzUxNDkyMzA1ZWRkM2EyMzgKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2VudW0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyVHlwZSB7IH07Cit1c2luZyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgPSBP
YmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGU+Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZTIzOWI3YzRlZTMwMjJjMGE3ZDk1NzU2ZTJmZGQ1
NGEwNjM0NTU1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCkBAIC0wLDAgKzEs
NTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeSgpID0gZGVmYXVsdDsKKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
OjpyZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUmIGhhbmRsZSkKK3sKKyAgICBBU1NFUlQoIW1f
aGFuZGxlcy5jb250YWlucyhpZGVudGlmaWVyKSk7CisKKyAgICBtX2hhbmRsZXMuYWRkKGlkZW50
aWZpZXIsIG1ha2VXZWFrUHRyKGhhbmRsZSkpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgQVNTRVJUKG1faGFuZGxlcy5jb250YWlucyhp
ZGVudGlmaWVyKSk7CisKKyAgICBtX2hhbmRsZXMucmVtb3ZlKGlkZW50aWZpZXIpOworfQorCitG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
Z2V0SGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQor
eworICAgIGlmIChhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy5nZXQoaWRlbnRpZmllcikpCisgICAg
ICAgIHJldHVybiBoYW5kbGUuZ2V0KCk7CisKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjIwNDQ4N2Y0ZWUzYzI3MjBiMzdhY2I4MTk1NmY4MWU3NzJkMDEz
MjcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oCkBAIC0wLDAgKzEsNDYgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKKyNpbmNs
dWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkgeworICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkoKTsKKyAgICB2b2lkIHJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUmKTsKKyAgICB2b2lkIHVu
cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSogZ2V0SGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcik7CisKK3ByaXZhdGU6CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIsIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+PiBtX2hhbmRs
ZXM7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45OTlkMmY0ZTI1MWU3NDhlNDVkNzQ5MmNkZTY1YmRiOWJk
MjFmNjJkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKQEAgLTAsMCArMSw5OSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXIuaCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6RmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkmIHJlZ2lzdHJ5KQorICAgIDogbV9wYXRoKFdURk1vdmUocGF0aCkpCisgICAgLCBtX3JlZ2lz
dHJ5KHJlZ2lzdHJ5KQoreworfQorCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIoKQoreworICAgIGZvciAoYXV0byBpZGVudGlmaWVyIDogbV9oYW5k
bGVzLmtleXMoKSkKKyAgICAgICAgbV9yZWdpc3RyeS51bnJlZ2lzdGVySGFuZGxlKGlkZW50aWZp
ZXIpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGUg
dHlwZSwgUmVmPFdvcmtRdWV1ZT4mJiBxdWV1ZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAocGF0
aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxv
cHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgYXV0byBmaWxlRXhp
c3RzID0gRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhwYXRoKTsKKyAgICBpZiAoIWNyZWF0ZUlmTmVj
ZXNzYXJ5ICYmICFmaWxlRXhpc3RzKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
c3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQpOworCisg
ICAgaWYgKGZpbGVFeGlzdHMpIHsKKyAgICAgICAgYXV0byBleGlzdGluZ0ZpbGVUeXBlID0gRmls
ZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgICAgIGlmICghZXhpc3RpbmdGaWxlVHlwZSkK
KyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5k
bGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUudmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGlu
Z0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaCk7Cisg
ICAgfQorCisgICAgYXV0byBuZXdIYW5kbGUgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlPigqdGhpcywgdHlwZSwgcGF0aCwgbmFtZSwgV1RGTW92ZShxdWV1ZSkpOworICAgIGF1
dG8gbmV3SGFuZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRpZmllcigpOworICAgIG1f
aGFuZGxlc0J5Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbi51bmlxdWVJRCgpLCBbJl0gewor
ICAgICAgICBtX2Nvbm5lY3Rpb25zLmFkZChjb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIEhh
c2hTZXQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRl
cmF0b3ItPnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJl
Z2lzdGVySGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFu
ZGxlcy5hZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBj
b21wbGV0aW9uSGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpFbXB0eSk7Cit9CisKK2NvbnN0IFN0cmluZyYgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
OjpnZXRQYXRoKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQor
eworICAgIGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLmZpbmQoaWRlbnRpZmllcik7CisgICAgcmV0
dXJuIGhhbmRsZSA9PSBtX2hhbmRsZXMuZW5kKCkgPyBlbXB0eVN0cmluZygpIDogaGFuZGxlLT52
YWx1ZS0+cGF0aCgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVj
dGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKGF1dG8g
aGFuZGxlcyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQo
KSk7IGhhbmRsZXMgIT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKSB7CisgICAgICAgIGZv
ciAoYXV0byBoYW5kbGVJZGVudGlmaWVyIDogaGFuZGxlcy0+dmFsdWUpIHsKKyAgICAgICAgICAg
IG1faGFuZGxlcy5yZW1vdmUoaGFuZGxlSWRlbnRpZmllcik7CisgICAgICAgICAgICBhdXRvIGhh
bmRsZSA9IG1faGFuZGxlcy50YWtlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgbV9y
ZWdpc3RyeS51bnJlZ2lzdGVySGFuZGxlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICB9Cisg
ICAgICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUoaGFuZGxlcyk7CisgICAgICAgIG1f
Y29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pOworICAgIH0KK30KKwordm9pZCBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIFJlZjxXb3JrUXVldWU+JiYgcXVldWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpv
cHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjcmVhdGVIYW5kbGUoY29u
bmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSwgcXVldWUu
Z2V0KCksIG1fcGF0aCwgZW1wdHlTdHJpbmcoKSwgdHJ1ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yYjU0MzVlN2M2ZDczZDljODM2OTAxZDk0NTIxYTJiOGYzZDli
ZDYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgorCituYW1l
c3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsK
KworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIENhbk1ha2VXZWFrUHRy
PEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OworcHVibGljOgorICAgIGV4cGxpY2l0IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcm
JiBwYXRoLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CisgICAgfkZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcigpOworCisgICAgdm9pZCBjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0
aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGUsIFJlZjxXb3JrUXVldWU+JiYsIGNv
bnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIGNv
bnN0IFN0cmluZyYgZ2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOwor
ICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2b2lkIGdl
dERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBSZWY8V29ya1F1ZXVlPiYmLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgorICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9yZWdpc3Ry
eTsKKyAgICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7CisgICAg
SGFzaE1hcDxJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllcj4+IG1faGFuZGxlc0J5Q29ubmVjdGlvbjsKKyAgICBIYXNoTWFw
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRyPEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDM2MmFmYjg4NTJhZmY0ODA5OWUw
OWNmNTVlN2VjNjczNWU1MzMzYzcuLjNjMGNjZDc3Mjk3NzAyOTViZmRiMzgxNTkzZTZjNWZhYzMy
MGJkNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgiCiAK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAi
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdl
TWFuYWdlci5oIgogI2luY2x1ZGUgPHBhbC9jcnlwdG8vQ3J5cHRvRGlnZXN0Lmg+CkBAIC00MSw2
ICs0Miw3IEBAIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6Y3JlYXRlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JCiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0
cmluZyYgcGF0aCkKICAgICA6IG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fcXVldWUo
V29ya1F1ZXVlOjpjcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuU3RvcmFnZSIpKQorICAgICwgbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KG1ha2VVbmlxdWVSZWY8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKSkKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OwogCkBAIC01Myw2ICs1NSw4IEBAIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyCiAgICAgfSk7CiB9
CiAKK05ldHdvcmtTdG9yYWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpID0gZGVm
YXVsdDsKKwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2Fn
ZUZyb21Db25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKIHsKICAgICBBU1NF
UlQoUnVuTG9vcDo6aXNNYWluKCkpOwpAQCAtNjUsNiArNjksMTAgQEAgdm9pZCBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25u
ZWN0aW9uJgogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25uZWN0aW9u
LnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHByb3RlY3RlZENvbm5lY3Rpb24g
PSBtYWtlUmVmKGNvbm5lY3Rpb24pXSgpIHsKKyAgICAgICAgZm9yIChhdXRvJiBvcmlnaW5TdG9y
YWdlTWFuYWdlciA6IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMudmFsdWVzKCkpCisgICAg
ICAgICAgICBvcmlnaW5TdG9yYWdlTWFuYWdlci0+Y29ubmVjdGlvbkNsb3NlZChwcm90ZWN0ZWRD
b25uZWN0aW9uLmdldCgpKTsKKyAgICB9KTsKIH0KIAogc3RhdGljIFN0cmluZyBlbmNvZGUoY29u
c3QgU3RyaW5nJiBzdHJpbmcsIEZpbGVTeXN0ZW06OlNhbHQgc2FsdCkKQEAgLTExMSw2ICsxMTks
NTkgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6
Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXQKICAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVl
KTsKIH0KIAordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3Rv
cnkoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmln
aW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisg
ICAgbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcihvcmlnaW4pLmZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcihtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuZ2V0KCkpLmdldERpcmVjdG9y
eShjb25uZWN0aW9uLCBtX3F1ZXVlLmNvcHlSZWYoKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAg
aWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisK
KyAgICBoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZpbGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlm
TmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICgh
aGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+Z2V0RmlsZUhh
bmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0
b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgCisgICAgYXV0byBoYW5kbGUgPSBt
X2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsK
KyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6
bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUt
PmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1
cnNpdmVseSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5n
Pj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5k
bGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24p
OworCisgICAgaGFuZGxlLT5yZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3Rv
cmFnZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUw
YWQ4ZWY1MGExYjBhYzYzNzlkOGI5OTA0YjUzM2QzNGY2YTNkMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDb25u
ZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk9yaWdpblN0
b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNs
dWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBDbGllbnRPcmln
aW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIg
OiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgeworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2Fn
ZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdl
cj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwogCkBAIC00OCwx
NCArNTIsMjEgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cihQQUw6OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyKCk7CiAgICAgT3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFn
ZU1hbmFnZXIoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1l
c3NhZ2VSZWNlaXZlciAoaW1wbGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBk
aWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAg
IC8vIE1lc3NhZ2UgSGFuZGxlcnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBw
ZXJzaXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CiAgICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5
c3RlbUdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRP
cmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAg
IHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYs
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9u
YWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNp
dmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAgIFJl
ZjxXb3JrUXVldWU+IG1fcXVldWU7CkBAIC02Myw2ICs3NCw4IEBAIHByaXZhdGU6CiAgICAgRmls
ZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4s
IHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9y
YWdlTWFuYWdlcnM7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5p
cXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5h
Z2VyczsKKworICAgIFVuaXF1ZVJlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBt
X2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZl
YzI3MWUwZThkZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFh
MDY0NTM4NTE3ZTBjNzhjNmM1NGE0ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5tZXNzYWdlcy5pbgpAQCAtMjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIgewogICAgIFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2lu
IG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdl
YkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAg
ICBGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3Jp
Z2luKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgSXNTYW1lRW50cnkoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4g
KGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBHZXRE
aXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVu
dGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9y
KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1vdmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBk
ZWxldGVSZWN1cnNpdmVseSkgLT4gKGJvb2wgcmVtb3ZlZCwgZW51bTp1aW50OF90IFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChzdGQ6
Om9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBwYXRoLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5j
cHAKaW5kZXggNzVhMWFlZDI0OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2
NTE4MzhhMzEzOGM5M2JmNjliYmU1NTZhY2Q0ZmVlY2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuY3BwCkBAIC0yNiw2ICsyNiw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
T3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwog
bmFtZXNwYWNlIFdlYktpdCB7CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0
b3JhZ2VCdWNrZXRNb2RlIDogYm9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4
LDEyICs0MSwzNCBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIp
CiAgICAgewogICAgIH0KKwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJl
dHVybiBtX21vZGU7IH0KICAgICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkg
eyBtX21vZGUgPSBtb2RlOyB9CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25u
ZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5l
Y3Rpb25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdl
UGF0aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0
ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmll
cik7CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisg
ICAgeworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAg
ICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKwor
ICAgICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJp
dmF0ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwog
ICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZm
b3J0IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9m
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3Jp
Z2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAog
T3JpZ2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsK
IAotdm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikK
K3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRCdWNrZXQtPmNv
bm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0g
ICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0QnVja2V0KQog
ICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0
aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VC
dWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30K
Kwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAgbV9wZXJzaXN0
ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2Rl
OjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVja2V0KCkuZmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3Jp
Z2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0
YzE0ZWZkNjUyODlmMzAuLmJjNjJjZjQyMmY1YTM1ZGQyZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5T
dG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFu
YWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKTsKIAorICAg
IHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKICAgICBib29sIHBlcnNp
c3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOwogCiBwcml2YXRlOgogICAgIGVudW0g
Y2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwogICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7
CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tldCgpOwogCiAgICAgc3RkOjp1bmlxdWVf
cHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tldDsKICAgICBTdHJpbmcgbV9wYXRoOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0
b3JhZ2VNYW5hZ2VyLmgub3JpZyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU0MjE1YjNjNzAwYmQ0
OTlkMDZlM2I5MDRjMTRlZmQ2NTI4OWYzMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKQEAg
LTAsMCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBPcmlnaW5T
dG9yYWdlTWFuYWdlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6Cisg
ICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7CisgICAgfk9y
aWdpblN0b3JhZ2VNYW5hZ2VyKCk7CisKKyAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcGVyc2lzdGVkOyB9CisgICAgdm9pZCBwZXJzaXN0KCk7CisKK3ByaXZhdGU6CisgICAg
ZW51bSBjbGFzcyBTdG9yYWdlQnVja2V0TW9kZSA6IGJvb2w7CisgICAgY2xhc3MgU3RvcmFnZUJ1
Y2tldDsKKworICAgIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1bHRCdWNr
ZXQ7CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBib29sIG1fcGVyc2lzdGVkIHsgZmFsc2UgfTsK
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weQppbmRleCBlNWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJi
MTViLi4zZjkzNmQyNTI5MDJlNTI0NzhlYjgxMTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYg
dHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0
OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtP
YnNlcnZlcklEJywKICAgICAgICAgJ1dlYktpdDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3InLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlz
dGVuZXJJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVy
JywKICAgICAgICAgJ1dlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CmluZGV4IDkzZGJhNmNkOTYwYjA4OTFiMmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJl
OGZmZWVjNmM4Yjk1Y2ZkMTM5YTBmMGZhZjBjOTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1
LDYgKzExNSw5IEBAIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9y
ZS5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVy
Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKIApAQCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3Mv
VXNlckNvbnRlbnQvV2ViVXNlckNvbnRlbnRDb250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJB
dXRoZW50aWNhdGlvbi9XZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNz
L1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhuUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFm
NzZiMzg5NGU5MTdjNTI3YzRmOTM4ZmVlZDg2M2M3NzAxYzY5Li5kMTIwZTRhYzU0ZWNlODA4NTY1
MmIxYTljNTBlMDVjMWFjMzZiZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMsNyArMyw3IEBACiAJYXJjaGl2ZVZlcnNpb24gPSAx
OwogCWNsYXNzZXMgPSB7CiAJfTsKLQlvYmplY3RWZXJzaW9uID0gNTI7CisJb2JqZWN0VmVyc2lv
biA9IDU0OwogCW9iamVjdHMgPSB7CiAKIC8qIEJlZ2luIFBCWEFnZ3JlZ2F0ZVRhcmdldCBzZWN0
aW9uICovCkBAIC0xNDY5LDYgKzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1
REUwMjZFNUJDRkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBF
QzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQx
MzAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2
QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUy
NkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMz
QzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4
MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8q
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRp
YXRlQWN0aW9uQ29udHJvbGxlci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUg
LyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk5MzIzNjExRTFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0
eWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIz
NjExRDFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUsNiArMTQ4
OCw3IEBACiAJCTkzNTZGMkRGMjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERG
MjE1MUFERjQwMDdGNDU1RiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYy
RTAyMTUyQjc1MjAwRTZENURGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIx
NTFBREYzMDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsg
fTsKIAkJOTM1NkYyRTEyMTUyQjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRF
MTIxNTFBREY0MDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJ
OTM1QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1
Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmgg
Ki87IH07CiAJCTkzNUVFQjlCMTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVF
RUI5RjEyNzc2MUFDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAv
KiBTdG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyog
U3RvcmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkwNCw2ICs0
OTA4LDE0IEBACiAJCTkzMDg1RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJN
ZXNzYWdlc1JlcGxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1
MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlw
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25U
eXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMwLDggQEAK
IAkJOTM0MjU4OEYyNTU1RENBNTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1l
ZGlhUGVybWlzc2lvblV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTM0QjcyNDMxOUY1QjlCRTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdL
QnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAv
KiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURDMjI2RTFC
QjY1MDAwRUM2QTcgLyogc3RvcmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hp
bGRyZW4gPSAoCisJCQkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaCAqLywKKwkJCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5
OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAg
Ki8sCisJCQkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCAqLywKKwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0Qg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUx
QkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3
MjZFMUM2RUUwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8s
CkBAIC0xMDAwNiw2ICsxMDAyOCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8q
IGNvY29hICovLAogCQkJCTJEMjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJ
QkMxMTFBREUxMTJGNUI5QTAwMzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMx
QTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAq
LywKIAkJCQkxQTcyODQ0NDE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lv
bi5jcHAgKi8sCiAJCQkJMUE3Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNv
bnZlcnNpb24uaCAqLywKIAkJCQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxl
Qml0bWFwVXRpbGl0aWVzLmNwcCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJCQkJMUFB
NTc1RkIxNDk2QjUyNjAwQTRFRTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTcyRUJCRDcyNTM3RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JU
QVBJLmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlk
b1NlcnZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAv
KiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2
RjMzQzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYx
QTE4RTI1QUUxMDBDRTFGODggLyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5
MEMxRjQxMjY0RkQ3MTAwM0U0NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlDNTlDNEE1OTE4QjgxMTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlv
bi5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZTQzNWRkMGM4YTQ2NGViMDEwNjFkYWI1OThjY2RlNmFjMzBj
ZmIxZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRl
IDxXZWJDb3JlL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitSZWY8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eT4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
Y3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShpZGVudGlmaWVyLCBjb25uZWN0aW9uKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVyKQorICAg
ICwgbV9jb25uZWN0aW9uKG1ha2VSZWZQdHIoY29ubmVjdGlvbikpCit7Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y29ubmVjdGlvbkNsb3NlZCgpCit7CisgICAgbV9j
b25uZWN0aW9uID0gbnVsbHB0cjsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5Ojppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoRXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKwor
ICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOwor
ICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZh
bHNlKTsKKworICAgIGlmIChtX2lkZW50aWZpZXIudG9VSW50NjQoKSA9PSAqaWRlbnRpZmllcikK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworCisgICAgbV9jb25uZWN0
aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6
SXNTYW1lRW50cnkobV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZXN1bHQpIG11dGFibGUg
eworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworICAgIH0pOworfQorCit2b2lk
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRp
b25PcjxSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKEV4Y2VwdGlvbiB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisK
KyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZO
ZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBuYW1lLCBj
b21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGhhbmRs
ZUlkZW50aWZpZXIsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWhhbmRsZUlk
ZW50aWZpZXIpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9u
IHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisgICAgCisgICAgICAgIGlmICgh
bV9jb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2Vw
dGlvbiB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAg
ICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShoYW5k
bGVJZGVudGlmaWVyLnZhbHVlKCksICptX2Nvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcihGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUobmFtZSksIFdURk1v
dmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHk6OmdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFt
X2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb24g
eyBVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0
aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6
R2V0RGlyZWN0b3J5SGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3Nhcnkp
LCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBuYW1lLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGhhbmRsZUlkZW50aWZp
ZXIsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWhhbmRsZUlkZW50aWZpZXIp
CisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgY29udmVy
dFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0
aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IFVu
a25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGhh
bmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShoYW5kbGVJZGVudGlm
aWVyLnZhbHVlKCksICptX2Nvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZSho
YW5kbGUpKSk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94
eTo6cmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKEV4Y2VwdGlvbiB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIg
fSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0
ZVJlY3Vyc2l2ZWx5KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKGJvb2wgcmVtb3ZlZCwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICgh
cmVtb3ZlZCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb24g
eyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKworICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcih7IH0pOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHk6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihFeGNlcHRpb24geyBVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3Qi
IH0pOworCisgICAgYXV0byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyKCk7CisgICAgaWYgKCFpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoVmVjdG9yPFN0cmluZz4geyB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlJlc29sdmUobV9pZGVu
dGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKV0oYXV0byBwYXRoLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAgICAg
ICAgaWYgKCFwYXRoKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2Vw
dGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJyb3IpIH0pOworCisgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKFdURk1vdmUocGF0aC52YWx1ZSgpKSk7CisgICAgfSk7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zNDBiMzIxNGE0YzY2OWEyMDkwZjAzZWZiNjkxODY1MWY1YjE0Mzk1
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApAQCAtMCwwICsxLDYzIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg+
CisKK25hbWVzcGFjZSBJUEMgeworY2xhc3MgQ29ubmVjdGlvbjsKK30KKworbmFtZXNwYWNlIFdl
YkNvcmUgewordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOworfQor
CituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94
eSBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbCB7CitwdWJsaWM6
CisgICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBjcmVhdGUoRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2
b2lkIGNvbm5lY3Rpb25DbG9zZWQoKTsKKworcHJpdmF0ZToKKyAgICBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25u
ZWN0aW9uJik7CisKKyAgICAvLyBGaWxlU3lzdGVtSGFuZGxlSW1wbAorICAgIHN0ZDo6b3B0aW9u
YWw8dWludDY0X3Q+IHN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgeyByZXR1cm4gbV9pZGVudGlm
aWVyLnRvVUludDY0KCk7IH0KKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJ
bXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYm
KT4mJikgZmluYWw7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0
aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYpIGZpbmFsOwor
ICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZO
ZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVm
PFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgZmluYWw7CisgICAg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmKSBm
aW5hbDsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJikg
ZmluYWw7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVudGlm
aWVyOworICAgIFJlZlB0cjxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbjsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKaW5kZXgg
ODg5NTA4YWE2YzczMzIxYzQzM2RiNTdkOTExNzNlNzA0Njg3ZTQxYS4uMDhiNmYzM2NjOGMwNjRh
ZDU0NTg2OGZkYzVlYTQ4NzM4YzIyZTRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24u
Y3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2Vi
U3RvcmFnZUNvbm5lY3Rpb24uaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuaCIKICNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKICNpbmNsdWRl
ICJOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3Mu
aCIKQEAgLTQ4LDYgKzQ5LDIxIEBAIHZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3Qo
V2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuCiAgICAgY29ubmVj
dGlvbigpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpQZXJzaXN0KG9yaWdpbiksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAordm9p
ZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6ZmlsZVN5c3RlbUdldERpcmVjdG9yeShDbGllbnRPcmln
aW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBh
dXRvJiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOworICAgIGNvbm5lY3Rpb24uc2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1HZXRE
aXJlY3Rvcnkob3JpZ2luKSwgW3dlYWtDb25uZWN0aW9uID0gbWFrZVdlYWtQdHIoY29ubmVjdGlv
biksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8g
aWRlbnRpZmllciwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICghaWRlbnRpZmll
cikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb24geyBjb252
ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKworICAgICAgICBpZiAoIXdlYWtDb25uZWN0
aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IFVu
a25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGlt
cGwgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoKmlkZW50aWZpZXIsICp3
ZWFrQ29ubmVjdGlvbik7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoeyB9LCBXVEZNb3ZlKGltcGwpKSk7CisgICAgfSk7
Cit9CisKIElQQzo6Q29ubmVjdGlvbiYgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNvbm5lY3Rpb24o
KQogewogICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5o
CmluZGV4IDFjMGU2NjM2OWI1NmVkYjcwZTkzYTg4OWUzMjUwMzU2NjY5MzM2ZTUuLjQ3NzRhN2Iw
NGIxY2NkODBmMjE0OTk4MjZkNTQ3NzQ2MDNjNzE2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVj
dGlvbi5oCkBAIC0zMSw2ICszMSwxMSBAQCBuYW1lc3BhY2UgSVBDIHsKIGNsYXNzIENvbm5lY3Rp
b247CiB9CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBF
eGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit9CisKIG5hbWVz
cGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJTdG9yYWdlQ29ubmVjdGlvbiBmaW5hbCA6IHB1Ymxp
YyBXZWJDb3JlOjpTdG9yYWdlQ29ubmVjdGlvbiB7CkBAIC00MCw2ICs0NSw3IEBAIHB1YmxpYzoK
IHByaXZhdGU6CiAgICAgdm9pZCBwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOwogICAgIHZvaWQgcGVyc2lzdChX
ZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikg
ZmluYWw7CisgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KFdlYkNvcmU6OkNsaWVudE9y
aWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxX
ZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFsOwogCiAgICAg
SVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKCk7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM1MWExZjhlZDc2MzRk
ZGUxOTFiNDBiOTZiNTFlMzI1ZDAzMTA1ODIuLmZkOWFlNzE4Mjk4ODlmMDc1NjdkMTIyZDEzNzFi
ODBhMmZlMTA1YjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOS0yMCAgU2lodWkgTGl1
ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBzdXBwb3J0IGZv
ciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6IEVuYWJsZSB0ZXN0cyBvbmx5IG9u
IFdLMiBwbGF0Zm9ybXMgd2hlcmUgaXQgaGFzIHRoZSBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAg
KiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdlL2ZpbGVz
eXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNp
Y3MuaHRtbDogQWRkZWQuCisKIDIwMjEtMDktMjAgIEF5dW1pIEtvamltYSAgPGF5dW1pX2tvamlt
YUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI4MTEwMj8pOiBbIE1hYyBdIG1l
ZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQuaHRtbCBpcyBhIGZsYWt5IHRpbWVvdXQuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzNDM3YTVlMTQ3ZDdkZGE0MGQxYmU5YmNjNzEwOWEy
NjgwNWFlMmFjLi5lNDUzZWQ5ZmI2YTg4YWU1NThlMGUxYzhhYTIxMzllYjFlMjhjNmYxIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAyMS0wOS0yMCAg
U2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBz
dXBwb3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lZCBleGlzdGluZyB0ZXN0cy4gVGhl
c2UgdGVzdHMgYXJlIG5vdCBwYXNzaW5nIGFzIHNvbWUgZnVuY3Rpb25zLCBsaWtlIGRpcmVjdG9y
eSBpdGVyYXRpb24gYXJlIG5vdCAKKyAgICAgICAgaW1wbGVtZW50ZWQgeWV0LgorCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERC
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50
cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZy
YW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlv
bi5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVt
b3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRs
ZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0
aXZlLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlw
ZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFt
LXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0
cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRo
aSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJp
dHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFj
N2VhOWU0N2MuLmU0YjNkY2E0MjU1ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVz
dEV4cGVjdGF0aW9ucwpAQCAtMjAwLDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24v
aW9zLyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9u
cy8gWyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBT
a2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
LyBbIFNraXAgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1w
cml2YWN5LXJlcG9ydCB0ZXN0cyByZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9h
cHAtcHJpdmFjeS1yZXBvcnQvIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3Jp
Z2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5
NjY0YmI0MDA5Ni4uMWI0ZGM4YjZkYTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1
ICsyLDUgQEAKIFBBU1Mgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZv
ciBkYXRhIFVSSSBpZnJhbWVzLgogUEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3Qg
YmUgdW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFn
ZS5nZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGlu
IGEgc2FuZGJveGVkIGlmcmFtZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3Rv
cnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3Rv
cnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdl
LmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4g
YSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dE
aXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmln
YXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3Ii
CitGQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5
UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3Vy
aXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBl
RXJyb3IiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0
MTI0YjdiZTRkY2RhYWQ0YWI5MzA3OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJl
YjY1NGY4MmYzNmVhMTMzN2UwYjAyYTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRl
eGVkREIgYW5kIHJlYWQgZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFk
IGZyb20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBTdG9yZSBoYW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJl
YWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5k
IHJlYWQgZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJh
bnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxl
cyBhbmQgYmxvYnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWRE
QiB1c2luZyBpbmxpbmUga2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJk
NGVmY2M4ZDZiMjE5MzQzMmJhMGNjZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjky
MzBiYTJjYjhkMzM1YzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNh
bCBkaXJlY3RvcnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1
cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVu
dHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwg
ZmlsZSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZl
cmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEg
ZGlmZmVyZW50IGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3Rv
cnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBp
c1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJl
bnQgZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9y
IGlkZW50aWNhbCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZh
bHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRp
ZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBk
aWZmZXJlbnQgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJl
dHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0
Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dAppbmRleCBlM2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQx
Zjg0Li4zOTVlY2E1NTRiZGQ3YjhhYjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRj
YXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVk
aWNhdGVkIHdvcmtlciBhbmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNh
c3QgY2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29y
a2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMx
ZGMwZmI2Y2IyNjViODQzYjJiMGNlZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2Zjlh
MGExMmRlYTZjNDgyODgxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9y
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWls
IHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1l
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBz
ZW5kIHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
RmFpbCB0byBzZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBt
ZXNzYWdlIHBvcnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGNyb3NzIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdp
biBtZXNzYWdlIHBvcnQgaW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNy
b3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3Nh
Z2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIGNyb3NzIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1
M2U5MGUyM2M0OTFmNTg4ZDFiNWI2ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRm
YjE1Y2UxMTFkOWZjMmY3MDZhMGJiYzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBt
ZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2Ug
cG9ydCBpbiBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUg
c3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13
aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CmluZGV4IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3
OTc3YjUuLmE5Mzg0N2QwMDM1YjNiZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRv
d3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmln
aW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4g
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2lu
ZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dAppbmRleCA0NTEwNjVlMzIyZGFmZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi4zNzIyM2My
ZTQzODEyMDZlMTc0MjkzNWMyYzg0ZDVjNzc4NzgyMWRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vy
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CiBGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0CmluZGV4IDg2NDVkOTNlZTU3MjE1NzliYjllZmM1MjgyNDY0NDQ5NzI1YzEzZTcuLjNjZTll
ODMyMjBlZGQyYmJmYTc0NmQ0Y2ViMjk0ZDY3MGE3ZDVjNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNiAr
MSw2IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3Jp
Z2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3Jj
ZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5k
Ym94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKaW5kZXggZjA5NTk5NTg5NjNmMmY0ZDZhOTdlOGE3YmE3Mzc0ZmI1MWU4MmQ0Zi4uNmQ5
NjI2NTg0MTk4YmU5MDc4MWVmYzk3YjFkMGZkYzhmYjFmOGE4NiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1l
IG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9y
aWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94
ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CmluZGV4IDcyZmYzZjU3NDEyZGQwOGVjNmE0YmYzYzA1ZmMzNjhiODlhZmFhNjYuLjgw
MmJiNjE3ZjJlYThhNjE5ZjdlNWJiZTVmMDZhZTBiMzZjN2FmNzcgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgZGVk
aWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIEZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0Y2EwZjk0NzEwYzhlM2Uw
NWY5NWEwNzQ3MDljZDg3YTA3YjI4NTdkLi43ZTY2MWNlMGY3OTM0ZjY5M2QyNmYzOTE3ZTA3Njg0
MGU3MWNkZjljIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDkg
KzEsOSBAQAogCi1GQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZp
bGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVt
b3ZlKCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZGlyZWN0b3J5
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92
ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVs
eSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhlIHJlY3Vyc2l2
ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmVtb3ZlKCkg
dG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92
ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9y
eSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVh
ZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIGRpcmVjdG9y
eSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUg
cmVjdXJzaXZlIG9wdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9y
eUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKaW5kZXggMWZjNDc0ODA2MjNlYWI5M2JjOTZhOTMxMGE3YzU2NjNmODU4ODIzMC4uNzgxNzFm
ZjBlNDg3OGViNDg5OTAxNTA5Y2ViNDU4M2Q4NTdhNjY4OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEs
MTIgKzEsMTIgQEAKIAotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWpl
Y3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFu
IGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9y
aWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhh
bmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVy
YXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5
SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZSgp
IHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVh
dGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBkaXJlY3RvcnkgZXhpc3Rz
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVj
dHMgZm9yIG5vbi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0
eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3Rv
cnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10
cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdoZW4gYSBm
aWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGgg
Ii4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3
aGVuIHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Ig
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRG
aWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggMzM2ZTRkYzczOTFiMDgzZmQw
NGFiYjgxNjRiZjI2MGIwY2VkMTVkOC4uYWU1NWQxMzRkMjc0MjVlMDdjYTFjODZmYTY3YTZmZDRj
ZTg3ZjU0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMyBAQAogCi1GQUlMIGdldEZpbGVIYW5kbGUoY3Jl
YXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRl
cyBhbiBlbXB0eSBmaWxlIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMg
ZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0
RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRob3V0IGVy
YXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUg
c2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVI
YW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0
aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZp
bGVIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZh
bHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZmlsZSBleGlzdHMuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUp
IHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgor
RkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5n
IGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShj
cmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZvciBub24tZXhpc3RpbmcgZmlsZXMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMg
d2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0Rmls
ZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0
aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0Rmls
ZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRo
IHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxl
SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBh
dGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFy
YXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRl
cmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggOTJiYTAwNjFjMTEyZGI5OWE2OTZj
MDNmYjRhYjBhODcxMGFiM2JlMS4uZmUxZmZhOWM0NWJmNzg5MThjNjhiZDgxMjI5ZDcyZWUwMzA2
YTRjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKQEAgLTEsOCArMSw4IEBACiAKLUZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0
aW9uIGRvZXNuJ3QgY3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
QEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdv
cmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGtleXM6IGZ1bGwgaXRl
cmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGl0ZXJh
dGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdhcmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJhdGlv
biBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgQEBhc3lu
Y0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGtleXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXRlcmF0aW9uIHdoaWxlIGl0ZXJhdG9yIGdl
dHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVF
bnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBh
YzZmYzE5NDg0NzljMTdkOThiMDM4Yjc0N2Q2YjkzMDZkYmMwOTJjLi4yODE0NzIyNWJkYTg0OTI4
ZGMzMjY3NjQxMDBhNDlmZmRhMmJjMDE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVu
dHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTEgKzEsMTEgQEAKIAotRkFJTCByZW1v
dmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQg
ZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgp
IHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxk
IGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnko
KSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRo
IGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUg
c2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3Zl
RW50cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxkIGZhaWwuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGEgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxy
ZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5
IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHJlbW92ZUVudHJ5KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBh
bGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50
cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1l
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50
cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxkIGZhaWwuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDU1NzFmMTFkMWNmMDBkMTM5ZWZhOWY4ZGM2ZThjNDJjMGIxYjMzNDAuLmY1ZTY1
MWIxZWYxYzdmMTE5NWM2YTU3YTA3MjczNjQyMjcxM2MyNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1y
ZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgUmVz
b2x2ZSByZXR1cm5zIGVtcHR5IGFycmF5IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3Jy
ZWN0IHBhdGggd2l0aCBub24tYXNjaWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgbnVsbCB3aGVuIGVudHJ5IGlzIG5vdCBh
IGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFJlc29sdmUgcmV0
dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCB3aXRoIG5v
bi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVz
b2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3QgYSBjaGlsZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0
cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2Vy
Lmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDMzMDEwZDcxODQ1MjJi
YjM3MDVlYjM4YjczNGEzZmEwZDI2ODY2ZmMuLjNiOGMwZDhkYWIwMTgwZTkyM2M0NDM5N2Y2NDFj
NjVkY2FlN2ZkOTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhh
bmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVu
dGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5o
dHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJ
TCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRsZS4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgQXR0ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBo
YW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKaW5kZXggOWNmMDE5ZDI1NjljZmY0OThjMTA0ZjE1YzdhZmFkYTFj
MTk3YTZjNy4uZjdjMTcwNzNhZWVmZjlhYWYwYjcyOGNjYmUyYWI4ZTFkZDYxYTU3OCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5k
bGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCi1GQUlM
IGdldEZpbGUoKSBwcm92aWRlcyBhIGZpbGUgdGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGUoKSByZXR1cm5zIGxhc3QgbW9kaWZp
ZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXRGaWxlKCkg
cHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGdldEZpbGUoKSByZXR1cm5zIGxhc3QgbW9kaWZpZWQgdGltZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CmluZGV4IGEwNjkyNjYxZGQyM2QxMGMwOWZmZDU5ZTZkYmUwYjBjOGUy
YzYwYmEuLmQxNTI2YzU5OTU4NjYyNWYzMTZhNzY3OThmNzAxNzQ4Yjg0NmZlZTAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0
dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0
YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwx
MCBAQAogCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgc3RyaW5nIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGFuIEFycmF5QnVm
ZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0
byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4g
YmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIHdyaXRlIGNvbW1hbmQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBw
YXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcGxheXMgd2VsbCB3aXRoIGZldGNoIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3
aXRoIGEgc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBp
cGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIHdyaXRl
IGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQg
dG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVk
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcGxheXMgd2VsbCB3aXRoIGZldGNo
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBmOTdlODEyZDc3MmE2NTUxNTdhNWRhY2VmYzEz
NWZjMDY2YjBhMjJjLi4zN2Y3YTY0YWU5YTVmMDFkZGQ4N2Y0YWNkYTg3OWE1NGI2NjY0OGU4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13
cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEs
MzEgKzEsMzEgQEAKIAotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0
eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBi
bG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gdG8gYW4gZW1wdHkg
ZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgc3Ry
aW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHdpdGgg
emVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUo
KSBjYWxsZWQgY29uc2VjdXRpdmVseSBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgc3Ry
aW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUo
KSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIHN0cmlu
ZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zm
c2V0IGJleW9uZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBzdHJpbmcgdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSB2
YWxpZCB1dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
d3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggdW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5n
IHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBh
biBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGZhaWxzIHdoZW4gcGFyZW50
IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFtcyBtYWtlIGF0b21pYyBjaGFu
Z2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21p
YyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiB0cnVuY2F0ZSgpIGFmdGVyIGNsb3Nl
KCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdy
aXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3BlcmF0aW9u
IG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21p
YyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFtIHBlcnNpc3RzIGZpbGUgb24gY2xvc2UsIGV2
ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQYXJhbXM6IHdyaXRlIG1pc3Np
bmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0
ZVBhcmFtczogc2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1w
dHkgZmlsZSBzaG91bGQgcmVqZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIFdyaXRlUGFy
YW1zIHdpdGhvdXQgcG9zaXRpb24gdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHpl
cm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJs
b2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2VjdXRpdmVseSBhcHBlbmRzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0
IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBl
bmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0
aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9m
ZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBzdHJpbmcgdG8gYW4gZW1wdHkgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHV0
Zi04IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0
aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggd2luZG93cyBs
aW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3
cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB0eXBlZCBh
cnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3Jp
dGVzOiBjbG9zZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGFibGUgZmls
ZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xvc2UgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFp
bHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB0cnVu
Y2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgp
IG9wZXJhdGlvbiBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFtIHBlcnNpc3RzIGZpbGUgb24gY2xv
c2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0V3JpdGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHdyaXRlIG1pc3NpbmcgZGF0
YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiBz
ZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRvIGFuIGVtcHR5IGZpbGUgc2hvdWxk
IHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDUwMDkyNTRhNGYxMGUyNzkzYmQ2NGM4NDE5NTU5MjQ1
MjEyZjJkMTEuLmUzODUxZmNhMzNlNGM5ZDgzOTYxOTFiNmQxZGJhZWFjZjBkYTM4OTQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJs
ZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1G
QUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKCkgZmFpbHMgd2hlbiBwYXJlbnQg
ZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVuY2F0ZSgpIGZhaWxzIHdoZW4gcGFy
ZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6IGF0b21pYyB3
cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250ZW50cyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4
aXN0aW5nRGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxp
emVkIHdpdGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBvZmZzZXQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwg
b2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNvbW1hbmRzIGFy
ZSBxdWV1ZWQsIHN0cmVhbSBpcyB1bmxvY2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB0cnVuY2F0ZSgpIHRvIHNocmluayBhIGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB0cnVuY2F0ZSgpIHRvIGdyb3cg
YSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUo
KSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlz
IHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB0cnVuY2F0ZSgpIGZh
aWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTog
YXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRl
bnRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoe2tl
ZXBFeGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0
aWFsaXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBvZmZzZXQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZz
ZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjb21tYW5kcyBhcmUgcXVldWVk
LCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IGQyMWRlZDU0OTk2ZTdmMGFjYzg4MDZmYTdlN2U5YTI3ZTdjZmNlNDYuLmQ4ZGNlYmU0
ODcxMDIzMDkzNDUzYWZhZmI4ZjNkMjcyYmRmOTNmNjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L3drMi9UZXN0RXhwZWN0YXRpb25zCkBAIC04NjQsMyArODY0LDUgQEAgZnVsbHNjcmVlbi9mdWxs
LXNjcmVlbi1lbnRlci13aGlsZS1leGl0aW5nLmh0bWwgWyBQYXNzIF0KIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBQYXNzIF0KK3N0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy8gWyBQYXNzIF0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxl
c3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmVlZjdiNmVjN2NkYjBhNmUxMzIxMzA5YmFmZjA1ZTk0
OTQxMWJmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwy
MCBAQAorVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBy
b290SGFuZGxlLm5hbWUgaXMgIiIKK1BBU1Mgcm9vdEhhbmRsZS5raW5kIGlzICJkaXJlY3Rvcnki
CitQQVNTIGRpckhhbmRsZS5uYW1lIGlzICJkaXIiCitQQVNTIGRpckhhbmRsZS5raW5kIGlzICJk
aXJlY3RvcnkiCitQQVNTIGlzU2FtZUVudHJ5IGlzIGZhbHNlCitQQVNTIGZpbGVIYW5kbGUubmFt
ZSBpcyAiZmlsZSIKK1BBU1MgZmlsZUhhbmRsZS5raW5kIGlzICJmaWxlIgorUEFTUyBoYW5kbGVO
YW1lcy5sZW5ndGggaXMgMgorUEFTUyBoYW5kbGVOYW1lc1swXSBpcyAiZGlyIgorUEFTUyBoYW5k
bGVOYW1lc1sxXSBpcyAiZmlsZSIKK1BBU1MgY3JlYXRlRXJyb3IudG9TdHJpbmcoKSBpcyAiTm90
Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUuIgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2lj
cy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1o
YW5kbGUtYmFzaWNzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODM3M2Q4NmUzN2VlZDg1MTRmNDM3NjM0ZWZk
NGUzMGE4ZjgwZmRjNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmls
ZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCkBAIC0wLDAgKzEsMTAw
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0
PgorZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2Yg
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS4iKTsKKwordmFyIHJvb3RIYW5kbGUsIGRpckhhbmRs
ZSwgZmlsZUhhbmRsZSwgaXNTYW1lRW50cnksIGhhbmRsZU5hbWVzLCBjcmVhdGVFcnJvcjsKKwor
ZnVuY3Rpb24gZmluaXNoVGVzdChlcnJvcikKK3sKKyAgICBpZiAoZXJyb3IpIHsKKyAgICAgICAg
dGVzdEZhaWxlZChlcnJvcik7CisgICAgfQorICAgIGZpbmlzaEpTVGVzdCgpOworfQorCitmdW5j
dGlvbiBnZXREaXJlY3RvcnkoKSB7CisgICAgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5
KCkudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIHJvb3RIYW5kbGUgPSBoYW5kbGU7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicm9vdEhhbmRsZS5uYW1lIiwgIiIpOworICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUua2luZCIsICJkaXJlY3RvcnkiKTsK
KyAgICAgICAgY3JlYXRlRGlyZWN0b3J5SGFuZGxlKHJvb3RIYW5kbGUpOworICAgIH0pLmNhdGNo
KChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKwor
ZnVuY3Rpb24gY3JlYXRlRGlyZWN0b3J5SGFuZGxlKGZyb21IYW5kbGUpIHsKKyAgICBmcm9tSGFu
ZGxlLmdldERpcmVjdG9yeUhhbmRsZSgiZGlyIiwgeyAiY3JlYXRlIiA6IHRydWUgfSkudGhlbigo
aGFuZGxlKSA9PiB7CisgICAgICAgIGRpckhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUubmFtZSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUua2luZCIsICJkaXJlY3RvcnkiKTsKKyAgICAgICAg
Y2hlY2tJZlNhbWVFbnRyeShyb290SGFuZGxlLCBkaXJIYW5kbGUpOworICAgIH0pLmNhdGNoKChl
cnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVu
Y3Rpb24gY2hlY2tJZlNhbWVFbnRyeShoYW5kbGUxLCBoYW5kbGUyKQoreworICAgIGhhbmRsZTEu
aXNTYW1lRW50cnkoaGFuZGxlMikudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIGlzU2FtZUVu
dHJ5ID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZUZhbHNlKCJpc1NhbWVFbnRyeSIpOworICAg
ICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgdHJ1ZSk7CisgICAgfSkuY2F0Y2goKGVy
cm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5j
dGlvbiBjcmVhdGVGaWxlSGFuZGxlKGZyb21IYW5kbGUsIGNyZWF0ZSkgeworICAgIGxldCBvcHRp
b25zID0geyAiY3JlYXRlIiA6IGNyZWF0ZSB9OworICAgIGZyb21IYW5kbGUuZ2V0RmlsZUhhbmRs
ZSgiZmlsZSIsIG9wdGlvbnMpLnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICBmaWxlSGFuZGxl
ID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUubmFt
ZSIsICJmaWxlIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5r
aW5kIiwgImZpbGUiKTsKKyAgICAgICAgcmVzb2x2ZVBhdGgoKTsKKyAgICB9KS5jYXRjaCgoZXJy
b3IpID0+IHsKKyAgICAgICAgaWYgKGNyZWF0ZSkgeworICAgICAgICAgICAgZmluaXNoVGVzdChl
cnJvcik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgY3JlYXRlRXJy
b3IgPSBlcnJvcjsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJjcmVhdGVFcnJvci50
b1N0cmluZygpIiwgIk5vdEZvdW5kRXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBo
ZXJlLiIpOworICAgICAgICBmaW5pc2hUZXN0KCk7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJl
c29sdmVQYXRoKCkgeworICAgIHJvb3RIYW5kbGUucmVzb2x2ZShmaWxlSGFuZGxlKS50aGVuKChy
ZXN1bHQpID0+IHsKKyAgICAgICAgaGFuZGxlTmFtZXMgPSByZXN1bHQ7CisgICAgICAgIHNob3Vs
ZEJlKCJoYW5kbGVOYW1lcy5sZW5ndGgiLCAiMiIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImhhbmRsZU5hbWVzWzBdIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImhhbmRsZU5hbWVzWzFdIiwgImZpbGUiKTsKKyAgICAgICAgcmVtb3ZlRW50cnkoZGly
SGFuZGxlLCAiZmlsZSIpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5p
c2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVtb3ZlRW50cnkoZnJvbUhh
bmRsZSwgbmFtZSkgeworICAgIGZyb21IYW5kbGUucmVtb3ZlRW50cnkobmFtZSkudGhlbigocmVz
dWx0KSA9PiB7CisgICAgICAgIC8vIE5vIGVycm9yIG1lYW5zIGl0IGlzIHJlbW92ZWQuCisgICAg
ICAgIGNyZWF0ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCBmYWxzZSk7CisgICAgfSkuY2F0Y2goKGVy
cm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBnZXRE
aXJlY3RvcnkoKTsKK30gZWxzZSB7CisgICAgZmluaXNoVGVzdCgid2luZG93LnRlc3RSdW5uZXIg
aXMgbm90IGF2YWlsYWJsZSIpOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438737</attachid>
            <date>2021-09-20 15:11:54 -0700</date>
            <delta_ts>2021-09-20 15:53:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920151153.patch</filename>
            <type>text/plain</type>
            <size>186198</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi4w
ZTU3NzI4NWQwODE0ZDJkNTk5OTRhYzkyYTYzMjQzMjJjZTY1ZTAzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgxIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9k
ZWNsYXJlZCk6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAo
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRl
U2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAy
ZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAg
ICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBN
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVs
ZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEy
ZTEuLmRiYjA4YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
IAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9t
aXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01h
bGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5n
JiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBs
PiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAK
LUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRs
ZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQog
Ci12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3Ry
aW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVI
YW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpHZXRGaWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0
ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAg
ICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9
KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRp
b25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90
U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBs
KCkuZ2V0RGlyZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBb
cHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAg
ICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNl
LnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJl
c29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpyZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZl
cnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsg
Tm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAg
ICBpbXBsKCkucmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtw
cm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAg
ICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2Up
Cit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRs
ZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4m
JiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRl
ZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRs
ZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAg
IHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43
YzQ3ZTc1NWVjMGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAg
V1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1Ymxp
YzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1Ymxp
YzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0
aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAg
dm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRG
aWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZp
bGVIYW5kbGU+PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcm
IG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZv
aWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9w
dGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNv
bnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURM
VVNWU3RyaW5nPj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9u
YWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5n
JiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlv
bnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lz
dGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUx
MzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2Vh
MjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYg
KzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJK
U0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+
CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQor
UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0
cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lz
dGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVI
YW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVt
SGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vz
cy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlk
YzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3Mg
RmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0
ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5k
bGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmls
ZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwog
ICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYm
KTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkg
eyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRs
ZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3
NDQ4Y2ZlNWE2MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01B
S0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFu
ZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5n
JiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhh
bmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkp
CisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFu
ZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVt
SGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0
ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRs
ZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9t
aXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1w
bCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5
YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1
OTRhMDU4MzQyZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNz
IFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBw
dWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FM
TE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lz
dGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAg
RmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0
ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBt
X2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7
IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQo
KTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9N
UHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmls
ZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJv
dGVjdGVkOgotICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRs
ZUltcGw+JiYpOwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9Owog
ICAgIFN0cmluZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5k
ZXggMjA4ZTc0NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYz
YzVjODc3ZGU2ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApA
QCAtMjksNiArMjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAg
ICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVu
YWJsZWRCeVNldHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtSGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1
NDcwNTA4YWY3ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDog
cHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRp
b25hbDx1aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBn
ZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4m
Jik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIz
MWY5NGI2NmFmMDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFh
YTU0NjExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15
U3RvcmFnZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAg
IHsKICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOwor
ICAgICAgICB9CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVj
dGlvbigpIGZpbmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
U3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9y
YWdlQ29ubmVjdGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhj
NzU1MzMuLjY2ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBA
IC0yNSwxMSArMjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47
CiAKIGNsYXNzIFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNv
bm5lY3Rpb24+IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3Jh
Z2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xp
ZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFn
ZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMw
OWUuLjdjMTY4OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcs
OCArMjcsMTAgQEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xp
ZW50T3JpZ2luLmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZp
Z2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYv
SXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3Rv
cmFnZU1hbmFnZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBw
cm9taXNlKQorc3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3Rv
cmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307
CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1h
bmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJO
YXZpZ2F0b3IgZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAg
ICAgYXV0byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsK
ICAgICBpZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRp
b24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Cisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMg
aW52YWxpZCJfcyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKKyAgICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNv
bm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVj
dGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlk
Il9zIH07CiAKLSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwot
ICAgIGlmICghb3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1
cm4gQ29ubmVjdGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5k
YXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAg
YXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBp
ZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2Vw
dGlvbigpKTsKIAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50
b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShw
cm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbklu
Zm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAg
IHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5l
Y3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJz
aXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAg
ICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZv
T3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09y
RXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
Y29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0
byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBp
ZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBh
dXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICgh
Y29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IElu
dmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rp
b24tPnBlcnNpc3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgp
IH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
eworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJl
bGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9u
LnBlcnNpc3QoV1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1v
dmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5y
ZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFj
ZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1l
bnRlZCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0
aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJu
IGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3Zl
KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0
byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9u
KCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVl
KCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFk
YTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3
MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNl
OwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0
aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFn
ZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsK
QEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3Jh
Z2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsK
KyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBX
ZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgz
NWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4
OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRh
YmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9q
cy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5j
cHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIz
ZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYw
ZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBF
Qjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1ND
b25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQy
NTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNB
MjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAv
KiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYg
LyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgx
RjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5
NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAw
RkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1h
Z2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAw
MzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4
LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87
IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0
ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nl
c3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMy
QzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1
M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1
ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3
RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlG
MTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2du
aXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFs
dGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQw
QzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2
RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2
RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVk
T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlh
Q2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JE
MDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZC
MUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYz
QjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1
QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywK
KwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9t
LmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVj
dGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRN
TENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkw
RiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcg
QEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Ki8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAq
LywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwg
Ki8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0Zp
bGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBT
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICsz
MjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxl
RW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVD
NDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJC
QUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4
NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNp
bmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVl
IHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAg
IHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsK
K30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCos
IEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYm
IGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxl
LmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNy
ZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSho
YW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2
ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVk
MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNj
cmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlw
dEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4
IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5
MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VX
b3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZjMzUyZTg0YjU0MjM5YmEyODZlNDYx
NGFmMzgyNzNmOTE2YWEyYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgKQEAgLTAsMCArMSw3MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRp
b25Db2RlLmg+CisjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3QgeworICAg
IEVtcHR5LAorICAgIEZpbGVOb3RGb3VuZCwKKyAgICBJbnZhbGlkTmFtZSwKKyAgICBJbnZhbGlk
TW9kaWZpY2F0aW9uLAorICAgIFR5cGVNaXNtYXRjaCwKKyAgICBVbmtub3duCit9OworCitpbmxp
bmUgV2ViQ29yZTo6RXhjZXB0aW9uQ29kZSBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IgZXJyb3IpCit7CisgICAgc3dpdGNoIChlcnJvcikgeworICAgIGNhc2Ug
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kOgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6Tm90Rm91bmRFcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb246CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpJbnZhbGlkTW9kaWZpY2F0aW9uRXJyb3I7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2g6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpUeXBlRXJyb3I7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJu
IFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlVua25vd25FcnJvcjsKKyAgICB9Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHsKKyAgICB1c2luZyB2
YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHksCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWROYW1lLAorICAgICAgICBX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb24sCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24KKyAgICA+OworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5iN2I4NzQzZGY5ZDUzM2QxNDAwNTQ4MGI3ZmY2OTQ4MmVkNzU5MDA2Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmNwcApAQCAtMCwwICsxLDEzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIgorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworI2lmIE9TKFdJTkRPV1MpCitj
b25zdGV4cHIgY2hhciBwYXRoU2VwYXJhdG9yID0gJ1xcJzsKKyNlbHNlCitjb25zdGV4cHIgY2hh
ciBwYXRoU2VwYXJhdG9yID0gJy8nOworI2VuZGlmCisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIG1hbmFn
ZXIsIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIG5hbWUsIFJl
ZjxXb3JrUXVldWU+JiYgcXVldWUpCisgICAgOiBtX2lkZW50aWZpZXIoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyOjpnZW5lcmF0ZSgpKQorICAgICwgbV9tYW5hZ2VyKG1ha2VXZWFr
UHRyKG1hbmFnZXIpKQorICAgICwgbV90eXBlKHR5cGUpCisgICAgLCBtX3BhdGgocGF0aCkKKyAg
ICAsIG1fbmFtZShuYW1lKQorICAgICwgbV9xdWV1ZShXVEZNb3ZlKHF1ZXVlKSkKK3sKKyAgICBB
U1NFUlQoIW1fcGF0aC5pc0VtcHR5KCkpOworCisgICAgc3dpdGNoIChtX3R5cGUpIHsKKyAgICBj
YXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3Rvcnk6CisgICAgICAgIEZp
bGVTeXN0ZW06Om1ha2VBbGxEaXJlY3RvcmllcyhtX3BhdGgpOworICAgICAgICByZXR1cm47Cisg
ICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RmlsZToKKyAgICAgICAgaWYg
KEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMobV9wYXRoKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgYXV0byBoYW5kbGUgPSBGaWxlU3lzdGVtOjpvcGVuRmlsZShtX3BhdGgsIEZpbGVTeXN0
ZW06OkZpbGVPcGVuTW9kZTo6V3JpdGUpOworICAgICAgICBGaWxlU3lzdGVtOjpjbG9zZUZpbGUo
aGFuZGxlKTsKKyAgICB9Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmlzU2Ft
ZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1
dG8gcGF0aCA9IG1fbWFuYWdlci0+Z2V0UGF0aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcihtX3BhdGggPT0gcGF0aCk7Cit9CisKK3ZvaWQgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RDcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBUeXBlIHR5cGUsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vz
c2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmIChtX3R5cGUgIT0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6
bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsKKworICAgIGlm
ICghbV9tYW5hZ2VyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxs
b3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIC8vIGh0dHBzOi8v
d2ljZy5naXRodWIuaW8vZmlsZS1zeXN0ZW0tYWNjZXNzLyN2YWxpZC1maWxlLW5hbWUKKyAgICBp
ZiAobmFtZSA9PSAiLiIgfHwgbmFtZSA9PSAiLi4iIHx8IG5hbWUuY29udGFpbnMocGF0aFNlcGFy
YXRvcikpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWROYW1lKTsKKworICAgIGF1dG8gcGF0aCA9IEZp
bGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3BhdGgsIG5hbWUpOworICAgIG1f
bWFuYWdlci0+Y3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIHR5cGUsIG1fcXVldWUuZ2V0KCksIHBh
dGgsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7
Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUoSVBDOjpD
b25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZO
ZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICByZXF1ZXN0Q3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxlLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
LCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZTo6cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wgcmVtb3ZlZCwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBUeXBlOjpE
aXJlY3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsKKworICAgIGF1dG8gcGF0aCA9IEZpbGVT
eXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3BhdGgsIG5hbWUpOworICAgIGF1dG8g
dHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAgIGlmICghdHlwZSkKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
OjpGaWxlTm90Rm91bmQpOworCisgICAgc3dpdGNoICh0eXBlLnZhbHVlKCkpIHsKKyAgICBjYXNl
IEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpSZWd1bGFyOgorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoRmlsZVN5c3RlbTo6ZGVsZXRlRmlsZShwYXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcjo6RW1wdHkpOworICAgIGNhc2UgRmlsZVN5c3RlbTo6RmlsZVR5cGU6OkRpcmVjdG9yeToK
KyAgICAgICAgaWYgKCFkZWxldGVSZWN1cnNpdmVseSkKKyAgICAgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtOjpkZWxldGVFbXB0eURpcmVjdG9yeShwYXRoKSwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHkpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoRmlsZVN5c3RlbTo6ZGVsZXRlTm9uRW1wdHlEaXJlY3RvcnkocGF0aCksIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKyAgICBkZWZhdWx0OgorICAgICAgICBSRUxFQVNFX0FT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHkpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6cmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxT
dHJpbmc+PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihz
dGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgYXV0
byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOworICAgIGlmIChwYXRoLmlz
RW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBpZiAoIXBhdGguc3RhcnRz
V2l0aChtX3BhdGgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoVmVjdG9yPFN0
cmluZz4geyB9LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7CisKKyAgICBhdXRvIHJl
c3RQYXRoID0gcGF0aC5zdWJzdHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICBjb21wbGV0aW9u
SGFuZGxlcihyZXN0UGF0aC5zcGxpdChwYXRoU2VwYXJhdG9yKSwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcjo6RW1wdHkpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWUxNGVhODI2NmU0ZjhlNDFkZTM4ZmMxZDY2YWZhYWU1
YTRhMWYzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oCkBAIC0wLDAgKzEsNjUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKKyNpbmNsdWRl
ICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKworI2luY2x1ZGUgPHd0Zi9X
ZWFrUHRyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI7CitlbnVtIGNsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IgOiB1aW50OF90Owor
CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSwgV2Vha1B0ckZhY3RvcnlJbml0aWFsaXphdGlvbjo6RWFn
ZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBlbnVtIGNs
YXNzIFR5cGUgOiBib29sIHsgRmlsZSwgRGlyZWN0b3J5IH07CisgICAgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiwgVHlwZSwgY29uc3QgU3RyaW5nJiBw
YXRoLCBjb25zdCBTdHJpbmcmIG5hbWUsIFJlZjxXb3JrUXVldWU+JiYpOworCisgICAgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2lkZW50aWZpZXI7IH0KKyAgICBjb25zdCBTdHJpbmcmIHBhdGgoKSBjb25zdCB7IHJldHVybiBt
X3BhdGg7IH0KKyAgICBXb3JrUXVldWUmIHF1ZXVlKCkgY29uc3QgeyByZXR1cm4gbV9xdWV1ZS5n
ZXQoKTsgfQorCisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0
RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24m
LCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlbW92
ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAg
dm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiwgRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgorICAgIHZvaWQgcmVxdWVzdENyZWF0ZUhhbmRs
ZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7
CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwor
ICAgIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyPiBtX21hbmFnZXI7CisgICAgVHlw
ZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBTdHJpbmcgbV9uYW1lOworICAgIFJl
ZjxXb3JrUXVldWU+IG1fcXVldWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3
MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJL
aXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGUgeyB9Owor
dXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmll
cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1
bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5k
bGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFp
bnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vh
a1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOwor
CisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0
byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFu
ZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4yMDQ0ODdmNGVlM2MyNzIwYjM3YWNiODE5NTZmODFlNzcyZDAxMzI3Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFz
cyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7
CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxl
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOwor
Citwcml2YXRlOgorICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
LCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTk5ZDJmNGUyNTFlNzQ4ZTQ1ZDc0OTJjZGU2NWJkYjliZDIxZjYyZAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0wLDAgKzEsOTkgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisKK25hbWVzcGFjZSBXZWJLaXQg
eworCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihT
dHJpbmcmJiBwYXRoLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3RyeSkK
KyAgICA6IG1fcGF0aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9yZWdpc3RyeShyZWdpc3RyeSkK
K3sKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKCkKK3sKKyAgICBmb3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisg
ICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9p
ZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24m
IGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFJlZjxXb3Jr
UXVldWU+JiYgcXVldWUsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBuYW1lLCBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9u
YWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gZmlsZUV4aXN0cyA9IEZpbGVTeXN0
ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVhdGVJZk5lY2Vzc2FyeSAmJiAhZmls
ZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kKTsKKworICAgIGlmIChmaWxlRXhp
c3RzKSB7CisgICAgICAgIGF1dG8gZXhpc3RpbmdGaWxlVHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVU
eXBlKHBhdGgpOworICAgICAgICBpZiAoIWV4aXN0aW5nRmlsZVR5cGUpCisgICAgICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpVbmtub3duKTsKKworICAgICAgICBhdXRvIGV4aXN0aW5nSGFuZGxlVHlwZSA9IChleGlz
dGluZ0ZpbGVUeXBlLnZhbHVlKCkgPT0gRmlsZVN5c3RlbTo6RmlsZVR5cGU6OlJlZ3VsYXIpID8g
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUgOiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6VHlwZTo6RGlyZWN0b3J5OworICAgICAgICBpZiAoZXhpc3RpbmdIYW5kbGVUeXBlICE9
IHR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworICAgIH0KKworICAgIGF1
dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4oKnRoaXMs
IHR5cGUsIHBhdGgsIG5hbWUsIFdURk1vdmUocXVldWUpKTsKKyAgICBhdXRvIG5ld0hhbmRsZUlk
ZW50aWZpZXIgPSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAgICBtX2hhbmRsZXNCeUNvbm5l
Y3Rpb24uZW5zdXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZdIHsKKyAgICAgICAgbV9jb25u
ZWN0aW9ucy5hZGQoY29ubmVjdGlvbik7CisgICAgICAgIHJldHVybiBIYXNoU2V0PEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4geyB9OworICAgIH0pLml0ZXJhdG9yLT52YWx1ZS5h
ZGQobmV3SGFuZGxlSWRlbnRpZmllcik7CisgICAgbV9yZWdpc3RyeS5yZWdpc3RlckhhbmRsZShu
ZXdIYW5kbGVJZGVudGlmaWVyLCAqbmV3SGFuZGxlKTsKKyAgICBtX2hhbmRsZXMuYWRkKG5ld0hh
bmRsZUlkZW50aWZpZXIsIFdURk1vdmUobmV3SGFuZGxlKSk7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIobmV3SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHkpOwor
fQorCitjb25zdCBTdHJpbmcmIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0UGF0aChGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBhdXRvIGhh
bmRsZSA9IG1faGFuZGxlcy5maW5kKGlkZW50aWZpZXIpOworICAgIHJldHVybiBoYW5kbGUgPT0g
bV9oYW5kbGVzLmVuZCgpID8gZW1wdHlTdHJpbmcoKSA6IGhhbmRsZS0+dmFsdWUtPnBhdGgoKTsK
K30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQoSVBD
OjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIGlmIChhdXRvIGhhbmRsZXMgPSBtX2hh
bmRsZXNCeUNvbm5lY3Rpb24uZmluZChjb25uZWN0aW9uLnVuaXF1ZUlEKCkpOyBoYW5kbGVzICE9
IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQoKSkgeworICAgICAgICBmb3IgKGF1dG8gaGFuZGxl
SWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVlKSB7CisgICAgICAgICAgICBtX2hhbmRsZXMucmVt
b3ZlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgYXV0byBoYW5kbGUgPSBtX2hhbmRs
ZXMudGFrZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgICAgIG1fcmVnaXN0cnkudW5yZWdp
c3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgfQorICAgICAgICBtX2hhbmRs
ZXNCeUNvbm5lY3Rpb24ucmVtb3ZlKGhhbmRsZXMpOworICAgICAgICBtX2Nvbm5lY3Rpb25zLnJl
bW92ZShjb25uZWN0aW9uKTsKKyAgICB9Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyOjpnZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBSZWY8V29ya1F1
ZXVlPiYmIHF1ZXVlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3RvcnksIHF1ZXVlLmdldCgpLCBtX3BhdGgs
IGVtcHR5U3RyaW5nKCksIHRydWUsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMmI1NDM1ZTdjNmQ3M2Q5YzgzNjkwMWQ5NDUyMWEyYjhmM2Q5YmQ2MwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBv
bmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7
CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAg
ICBleHBsaWNpdCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIoKTsKKworICAgIHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpUeXBlLCBSZWY8V29ya1F1ZXVlPiYmLCBjb25zdCBTdHJpbmcmIHBh
dGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICBjb25zdCBTdHJpbmcmIGdl
dFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICB2b2lkIGNvbm5l
Y3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnkoSVBD
OjpDb25uZWN0aW9uJiwgUmVmPFdvcmtRdWV1ZT4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChz
dGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKworcHJpdmF0ZToKKyAgICBTdHJpbmcgbV9wYXRoOworICAg
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIG1fcmVnaXN0cnk7CisgICAgV2Vha0hh
c2hTZXQ8SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb25zOworICAgIEhhc2hNYXA8SVBDOjpD
b25uZWN0aW9uOjpVbmlxdWVJRCwgSGFzaFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXI+PiBtX2hhbmRsZXNCeUNvbm5lY3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZT4+IG1faGFuZGxlczsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCAzNjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVl
NTMzM2M3Li4zYzBjY2Q3NzI5NzcwMjk1YmZkYjM4MTU5M2U2YzVmYWMzMjBiZDQ2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKICNp
bmNsdWRlIDxwYWwvY3J5cHRvL0NyeXB0b0RpZ2VzdC5oPgpAQCAtNDEsNiArNDIsNyBAQCBSZWY8
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyPiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZShQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSQogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpCiAg
ICAgOiBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiAgICAgLCBtX3F1ZXVlKFdvcmtRdWV1ZTo6Y3Jl
YXRlKCJjb20uYXBwbGUuV2ViS2l0LlN0b3JhZ2UiKSkKKyAgICAsIG1fZmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeShtYWtlVW5pcXVlUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnk+KCkpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIApAQCAtNTMsNiAr
NTUsOCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwogfQogCitOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CisKIHZvaWQg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdGFydFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlv
bihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsKQEAgLTY1LDYgKzY5LDEwIEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpz
dG9wUmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYKICAgICBB
U1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCiAgICAgY29ubmVjdGlvbi5yZW1vdmVXb3JrUXVl
dWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6bWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpKTsKKyAgICBtX3F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVk
VGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwcm90ZWN0ZWRDb25uZWN0aW9uID0gbWFrZVJlZihjb25u
ZWN0aW9uKV0oKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBt
X2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2lu
U3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVkQ29ubmVjdGlvbi5nZXQo
KSk7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNvbnN0IFN0cmluZyYgc3Ry
aW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsNiArMTE5LDU5IEBAIHZvaWQgTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYg
b3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiB9CiAKK3ZvaWQg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVj
dGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGxvY2FsT3JpZ2lu
U3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIobV9maWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmdldCgpKS5nZXREaXJlY3RvcnkoY29ubmVjdGlvbiwg
bV9xdWV1ZS5jb3B5UmVmKCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9p
ZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIgdGFyZ2V0SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgaGFuZGxlLT5p
c1NhbWVFbnRyeSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7
Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldEZpbGVIYW5kbGUoY29ubmVjdGlv
biwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
K30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nhcnks
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQoreworICAgIAorICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5k
bGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5nZXREaXJlY3RvcnlI
YW5kbGUoY29ubmVjdGlvbiwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVu
dHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdl
dEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsK
KworICAgIGhhbmRsZS0+cmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVjdXJzaXZlbHksIFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9
IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIp
OworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRs
ZS0+cmVzb2x2ZSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7
Cit9CisKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5n
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBB
U1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCmluZGV4IGY2
ZGFlZDEzZjI2NzUzNzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLmJlMGFkOGVmNTBhMWIwYWM2
Mzc5ZDhiOTkwNGI1MzNkMzRmNmEzZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI2
LDYgKzI2LDggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5o
IgogI2luY2x1ZGUgPFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Np
b25JRC5oPgpAQCAtMzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2luOwogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDogcHVibGljIElQQzo6
Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNzIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdlTWFuYWdlciBmaW5h
bCA6IHB1YmxpYyBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlciB7CiBw
dWJsaWM6CiAgICAgc3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IGNyZWF0ZShQQUw6
OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDgsMTQgKzUyLDIxIEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICBOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9u
SUQsIGNvbnN0IFN0cmluZyYgcGF0aCk7CisgICAgfk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwog
ICAgIE9yaWdpblN0b3JhZ2VNYW5hZ2VyJiBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0
IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYpOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIg
KGltcGxlbWVudGVkIGJ5IGdlbmVyYXRlZCBjb2RlKQogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3Nh
Z2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJik7CiAKLSAgICAvLyBNZXNzYWdlIEhh
bmRsZXJzCisgICAgLy8gTWVzc2FnZSBoYW5kbGVycwogICAgIHZvaWQgcGVyc2lzdGVkKGNvbnN0
IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OwogICAgIHZvaWQgcGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3Rv
cnkoSVBDOjpDb25uZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVu
dHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2
b2lkIGdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nhcnks
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAg
ICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+
JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7
CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0
ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7
CiAKICAgICBQQUw6OlNlc3Npb25JRCBtX3Nlc3Npb25JRDsKICAgICBSZWY8V29ya1F1ZXVlPiBt
X3F1ZXVlOwpAQCAtNjMsNiArNzQsOCBAQCBwcml2YXRlOgogICAgIEZpbGVTeXN0ZW06OlNhbHQg
bV9zYWx0OwogICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9w
dHI8T3JpZ2luU3RvcmFnZU1hbmFnZXI+PiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzOwog
ICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2lu
U3RvcmFnZU1hbmFnZXI+PiBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnM7CisKKyAgICBV
bmlxdWVSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeT4gbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmZWMyNzFlMGU4ZGU4OThm
ZjM5OTI2Y2I4NjQwZWExMGYxNzk5NTUwLi42YWFmYzllNzVkYzRhZThhYTA2NDUzODUxN2UwYzc4
YzZjNTRhNDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
QEAgLTI2LDQgKzI2LDEwIEBACiAgbWVzc2FnZXMgLT4gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIHsK
ICAgICBQZXJzaXN0ZWQoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChi
b29sIHBlcnNpc3RlZCkgQXN5bmMKICAgICBQZXJzaXN0KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRP
cmlnaW4gb3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCisgICAgRmlsZVN5c3RlbUdl
dERpcmVjdG9yeShzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKHN0ZDo6
b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+IGlkZW50
aWZpZXIsIGVudW06dWludDhfdCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IgZXJyb3Ip
IEFzeW5jIFdhbnRzQ29ubmVjdGlvbgorICAgIElzU2FtZUVudHJ5KFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChib29sIHJlc3VsdCkg
QXN5bmMKKyAgICBHZXRGaWxlSGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5
KSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgR2V0RGlyZWN0b3J5SGFuZGxl
KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0
cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAoc3RkOjpvcHRpb25hbDxXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1
aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHND
b25uZWN0aW9uCisgICAgUmVtb3ZlRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZl
bHkpIC0+IChib29sIHJlbW92ZWQsIGVudW06dWludDhfdCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IgZXJyb3IpIEFzeW5jCisgICAgUmVzb2x2ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyKSAtPiAoc3RkOjpvcHRpb25hbDxWZWN0
b3I8U3RyaW5nPj4gcGF0aCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvciBlcnJvcikgQXN5bmMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDc1YTFh
ZWQyNDlmOTI4NTk5MGY2NmNhOTY4MTczNzg4ZWY0N2QwNTQuLmUzYzdlNjUxODM4YTMxMzhjOTNi
ZjY5YmJlNTU2YWNkNGZlZWNlMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYs
NiArMjYsOSBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VN
YW5hZ2VyLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmgi
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKIG5hbWVzcGFjZSBXZWJL
aXQgewogCiBlbnVtIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0TW9k
ZSA6IGJvb2wgeyBCZXN0RWZmb3J0LCBQZXJzaXN0ZW50IH07CkBAIC0zOCwxMiArNDEsMzQgQEAg
cHVibGljOgogICAgICAgICAsIG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgIHsKICAgICB9
CisKICAgICBTdG9yYWdlQnVja2V0TW9kZSBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9
CiAgICAgdm9pZCBzZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUpIHsgbV9tb2RlID0gbW9k
ZTsgfQorCisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbikKKyAgICB7CisgICAgICAgIGlmIChtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAg
ICAgICAgICAgIG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLT5jb25uZWN0aW9uQ2xvc2VkKGNv
bm5lY3Rpb24pOworICAgIH0KKworICAgIFN0cmluZyB0eXBlU3RvcmFnZVBhdGgoY29uc3QgU3Ry
aW5nJiBzdG9yYWdlSWRlbnRpZmllcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3Jv
b3RQYXRoLmlzRW1wdHkoKSA/IGVtcHR5U3RyaW5nKCkgOiBGaWxlU3lzdGVtOjpwYXRoQnlBcHBl
bmRpbmdDb21wb25lbnQobV9yb290UGF0aCwgc3RvcmFnZUlkZW50aWZpZXIpOworICAgIH0KKwor
ICAgIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQorICAgIHsKKyAgICAgICAg
aWYgKCFtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAgICAgIG1fZmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+KHR5
cGVTdG9yYWdlUGF0aCgiRmlsZVN5c3RlbSIpLCByZWdpc3RyeSk7CisKKyAgICAgICAgcmV0dXJu
ICptX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKKyAgICB9CisKIHByaXZhdGU6CiAgICAgU3Ry
aW5nIG1fcm9vdFBhdGg7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBTdG9yYWdlQnVj
a2V0TW9kZSBtX21vZGUgeyBTdG9yYWdlQnVja2V0TW9kZTo6QmVzdEVmZm9ydCB9OworICAgIHN0
ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOwogfTsKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9yaWdpblN0b3JhZ2VNYW5h
Z2VyKFN0cmluZyYmIHBhdGgpCkBAIC01MywxNCArNzgsMjkgQEAgT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpCiAKIE9yaWdpblN0b3JhZ2VN
YW5hZ2VyOjp+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CiAKLXZvaWQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoKQordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29u
bmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKG1f
ZGVmYXVsdEJ1Y2tldCkKKyAgICAgICAgbV9kZWZhdWx0QnVja2V0LT5jb25uZWN0aW9uQ2xvc2Vk
KGNvbm5lY3Rpb24pOworfQorCitPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldCYg
T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmRlZmF1bHRCdWNrZXQoKQogewotICAgIG1fcGVyc2lzdGVk
ID0gdHJ1ZTsKLSAgICAKICAgICBpZiAoIW1fZGVmYXVsdEJ1Y2tldCkKICAgICAgICAgbV9kZWZh
dWx0QnVja2V0ID0gbWFrZVVuaXF1ZTxTdG9yYWdlQnVja2V0PihtX3BhdGgsICJkZWZhdWx0Il9z
KTsKIAotICAgIG1fZGVmYXVsdEJ1Y2tldC0+c2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVy
c2lzdGVudCk7CisgICAgcmV0dXJuICptX2RlZmF1bHRCdWNrZXQ7Cit9CisKK3ZvaWQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoKQoreworICAgIG1fcGVyc2lzdGVkID0gdHJ1ZTsKKyAg
ICBkZWZhdWx0QnVja2V0KCkuc2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVyc2lzdGVudCk7
Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiBy
ZWdpc3RyeSkKK3sKKyAgICByZXR1cm4gZGVmYXVsdEJ1Y2tldCgpLmZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlcihyZWdpc3RyeSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5h
Z2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaAppbmRleCA5ZTQyMTViM2M3MDBiZDQ5OWQwNmUzYjkwNGMxNGVmZDY1Mjg5ZjMw
Li5iYzYyY2Y0MjJmNWEzNWRkMmVjNGJiYTY4NTYxZjcxZTEwYjY4OTU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaApAQCAtMjUsMjIgKzI1LDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOwor
CiBjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYg
cGF0aCk7CiAgICAgfk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCk7CiAKKyAgICB2b2lkIGNvbm5lY3Rp
b25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CiAgICAgYm9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7
IHJldHVybiBtX3BlcnNpc3RlZDsgfQogICAgIHZvaWQgcGVyc2lzdCgpOworICAgIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkmKTsKIAogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIFN0b3JhZ2VC
dWNrZXRNb2RlIDogYm9vbDsKICAgICBjbGFzcyBTdG9yYWdlQnVja2V0OworICAgIFN0b3JhZ2VC
dWNrZXQmIGRlZmF1bHRCdWNrZXQoKTsKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVj
a2V0PiBtX2RlZmF1bHRCdWNrZXQ7CiAgICAgU3RyaW5nIG1fcGF0aDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5o
Lm9yaWcgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaC5vcmlnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0
ZWZkNjUyODlmMzAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaC5vcmlnCkBAIC0wLDAgKzEsNTEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXIg
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGV4cGxpY2l0IE9y
aWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpOworICAgIH5PcmlnaW5TdG9yYWdlTWFu
YWdlcigpOworCisgICAgYm9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7IHJldHVybiBtX3BlcnNpc3Rl
ZDsgfQorICAgIHZvaWQgcGVyc2lzdCgpOworCitwcml2YXRlOgorICAgIGVudW0gY2xhc3MgU3Rv
cmFnZUJ1Y2tldE1vZGUgOiBib29sOworICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisKKyAgICBz
dGQ6OnVuaXF1ZV9wdHI8U3RvcmFnZUJ1Y2tldD4gbV9kZWZhdWx0QnVja2V0OworICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgYm9vbCBtX3BlcnNpc3RlZCB7IGZhbHNlIH07Cit9OworCit9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkK
aW5kZXggZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWViZjcyYjE1Yi4uM2Y5MzZkMjUy
OTAyZTUyNDc4ZWI4MTEwOWJlMjY4ZGEwOTVlNWI4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMv
d2Via2l0L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fu
bm90X2JlX2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVudFdvcmxk
SWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJRCcsCiAg
ICAgICAgICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmll
cicsCiAgICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAgICAgICdX
ZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRleCA5M2Ri
YTZjZDk2MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZjOGI5NWNm
ZDEzOWEwZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUsOSBAQCBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBuby11bmlm
eQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3Bw
IEBuby11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29u
dGV4dENvbm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1h
bmFnZXIuY3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250ZW50L1dl
YlVzZXJDb250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24v
V2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNh
dGlvbi9XZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQv
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTkxZjc2YjM4OTRlOTE3YzUy
N2M0ZjkzOGZlZWQ4NjNjNzcwMWM2OS4uZDEyMGU0YWM1NGVjZTgwODU2NTJiMWE5YzUwZTA1YzFh
YzM2YmQwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC0zLDcgKzMsNyBAQAogCWFyY2hpdmVWZXJzaW9uID0gMTsKIAljbGFzc2VzID0g
ewogCX07Ci0Jb2JqZWN0VmVyc2lvbiA9IDUyOworCW9iamVjdFZlcnNpb24gPSA1NDsKIAlvYmpl
Y3RzID0gewogCiAvKiBCZWdpbiBQQlhBZ2dyZWdhdGVUYXJnZXQgc2VjdGlvbiAqLwpAQCAtMTQ2
OSw2ICsxNDY5LDkgQEAKIAkJOTMwODVEREYyNkU1QkNGMTAwMEVDNkE3IC8qIE5ldHdvcmtTdG9y
YWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9y
YWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oICovOyB9OwogCQk5MzA4NURFMDI2RTVCQ0ZEMDAw
RUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcgLyogTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyLmggKi87IH07CiAJCTkzMDg1REUxMjZFNUJEMTMwMDBFQzZBNyAvKiBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi87IH07CisJCTkzMTJCQUQ1MjZGMzNDMjYwMEZEREY1
RiAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKKwkJOTMxMkJBRDYyNkYzM0MyOTAwRkRERjVGIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGUuaCAqLzsgfTsKKwkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yLmggKi87IH07CiAJCTkzMjFENTg2MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFj
dGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRy
b2xsZXIuaCAqLzsgfTsKIAkJOTMyMUQ1OEExQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMyMzYx
MUUxQjAxNURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMzYxMUQxQjAxNURBODAw
RkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNDg1LDYgKzE0ODgsNyBAQAogCQk5MzU2
RjJERjIxNTJCNzIzMDBFNkQ1REYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERjIxNTFBREY0MDA3RjQ1
NUYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgKi87IH07CiAJCTkzNTZGMkUwMjE1MkI3NTIwMEU2
RDVERiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REQyMTUxQURGMzAwN0Y0NTVG
IC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgKi87IH07CiAJCTkzNTZGMkUx
MjE1MkI3NjYwMEU2RDVERiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0RTEyMTUxQURGNDAwN0Y0
NTVGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgKi87IH07CisJCTkzNUI1NzlBMjZGNTE5
MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVCNTc5ODI2RjUxMjcwMDA4
QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovOyB9OwogCQk5MzVF
RUI5QjEyNzc2MTdDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5ODEyNzc2
MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1RUVCOUYxMjc3NjFBQzAw
MzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tC
dW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk5MzY4RUVERTIzMDNBOTAyMDBCREIxMUEgLyogU3RvcmFnZU1hbmFn
ZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTM2OEVFREMyMzAzQThEODAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5hZ2Vy
U2V0TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKQEAgLTQ5MDQsNiArNDkwOCwxNCBAQAogCQk5
MzA4NURDQzI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJl
Y2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHdvcmtT
dG9yYWdlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJN
ZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFn
ZU1hbmFnZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzA4NURD
RTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFuYWdl
ck1lc3NhZ2VzUmVwbGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1
MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUz
MjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJF
MDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVk
aWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTkzMjFENTg3MUEzOEVFNzQwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xs
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS0ltbWVkaWF0
ZUFjdGlvbkNvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFE
NTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQ5MTgsNiArNDkzMCw4IEBACiAJCTkzNDI1ODhGMjU1
NURDQTUwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzNDI1ODk4MjU1QjUzNEIwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25V
dGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQZXJtaXNz
aW9uVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNEI3MjQzMTlG
NUI5QkUwMEFFOTZENiAvKiBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV0tBY3Rpb25NZW51SXRlbVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTkzNUVFQjk1MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3
YXJkTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk2MTI3NzYx
NkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNr
Rm9yd2FyZExpc3RJdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC05NjkxLDYgKzk3MDUsMTQgQEAKIAkJOTMwODVEQzIyNkUxQkI2NTAwMEVDNkE3IC8q
IHN0b3JhZ2UgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJ
CTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi8s
CisJCQkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmNwcCAqLywKKwkJCQk5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUuaCAqLywKKwkJCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8sCisJCQkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0
OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwICovLAorCQkJCTkzNUI1
Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmgg
Ki8sCisJCQkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlci5jcHAgKi8sCisJCQkJOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REMzMjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3
b3JrU3RvcmFnZU1hbmFnZXIuY3BwICovLAogCQkJCTkzMDg1REM0MjZFMUJCQkQwMDBFQzZBNyAv
KiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDNzI2RTFDNkVFMDAwRUM2
QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluICovLApAQCAtMTAwMDYsNiAr
MTAwMjgsOCBAQAogCQkJCUNENjE3ODExMUU2REU5ODAwMEZEQTU3RCAvKiBjb2NvYSAqLywKIAkJ
CQkyRDI4RjNERjE4ODVDQ0I0MDA0QjlFQUUgLyogaW9zICovLAogCQkJCUJDMTExQURFMTEyRjVC
OUEwMDMzN0JBQiAvKiBtYWMgKi8sCisJCQkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwICovLAorCQkJCTkzMUEwNzVBMjZGMUI5Njgw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggKi8sCiAJCQkJMUE3Mjg0
NDQxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwICovLAogCQkJ
CTFBNzI4NDQ1MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmggKi8s
CiAJCQkJRjQzQTlDREUyNUQ3MkUyRDAwOTkwRTI2IC8qIFNoYXJlYWJsZUJpdG1hcFV0aWxpdGll
cy5jcHAgKi8sCkBAIC0xMjE3OCw2ICsxMjIwMiwxMCBAQAogCQkJCTFBQTU3NUZCMTQ5NkI1MjYw
MEE0RUUwNiAvKiBFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MkVCQkQ3
MjUzN0VCQUUwMDA1NTJCMyAvKiBFeHRyYVByaXZhdGVTeW1ib2xzRm9yVEFQSS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTdCODI2NDgyMzA1MEM1MTAwQjcyRUIwIC8qIEZpZG9TZXJ2aWNlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDYyNkYzM0MyOTAwRkRERjVG
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzVCNTc5
QTI2RjUxOTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDBCOTY2MUExOEUyNUFFMTAwQ0Ux
Rjg4IC8qIEZpbmRDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBOTBDMUY0MTI2NEZENzEw
MDNFNDRENCAvKiBGaW5kQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzU5QzRBNTkx
OEI4MTE3NDAwN0JEQ0I2IC8qIEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24uaCBpbiBIZWFkZXJz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjNlNjhkOTdlNTBhN2VlNWZiNGIyOGVkMTk2N2Y2OGM5NzNlMTkzMTAKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUg
Ik5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNl
cHRpb25Pci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaD4KKworbmFtZXNwYWNl
IFdlYktpdCB7CisKK1JlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICByZXR1
cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KGlkZW50aWZpZXIs
IGNvbm5lY3Rpb24pKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIDogbV9pZGVudGlm
aWVyKGlkZW50aWZpZXIpCisgICAgLCBtX2Nvbm5lY3Rpb24obWFrZVJlZlB0cihjb25uZWN0aW9u
KSkKK3sKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9u
Q2xvc2VkKCkKK3sKKyAgICBtX2Nvbm5lY3Rpb24gPSBudWxscHRyOworfQorCit2b2lkIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBs
JiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8Ym9v
bD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBVbmtu
b3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0byBpZGVudGlmaWVy
ID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYgKCFpZGVudGlmaWVy
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgaWYgKG1f
aWRlbnRpZmllci50b1VJbnQ2NCgpID09ICppZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIodHJ1ZSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNS
ZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpJc1NhbWVFbnRyeShtX2lkZW50
aWZpZXIsIG1ha2VPYmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllclR5cGU+KCppZGVudGlmaWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpXShib29sIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKHJlc3VsdCk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eTo6Z2V0RmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxX
ZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0
IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldEZpbGVIYW5kbGUobV9pZGVudGlmaWVyLCBuYW1lLCBj
cmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyks
IG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1
dG8gaGFuZGxlSWRlbnRpZmllciwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICgh
aGFuZGxlSWRlbnRpZmllcikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihX
ZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKyAg
ICAKKyAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlv
biBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eTo6Y3JlYXRlKGhhbmRsZUlkZW50aWZpZXIudmFsdWUoKSwgKm1fY29ubmVj
dGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxl
SGFuZGxlOjpjcmVhdGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShoYW5kbGUpKSk7CisgICAgfSk7
Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFVu
a25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24t
PnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXRE
aXJlY3RvcnlIYW5kbGUobV9pZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIG5hbWUsIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gaGFuZGxlSWRlbnRpZmllciwg
YXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICghaGFuZGxlSWRlbnRpZmllcikKKyAg
ICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKyAgICAKKyAgICAgICAgaWYgKCFtX2Nv
bm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6
RXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisg
ICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRl
KGhhbmRsZUlkZW50aWZpZXIudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5OjpyZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIGRlbGV0ZVJl
Y3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZv
aWQ+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgVW5r
bm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+
c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlJlbW92
ZUVudHJ5KG1faWRlbnRpZmllciwgbmFtZSwgZGVsZXRlUmVjdXJzaXZlbHkpLCBbY29tcGxldGlv
bkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZW1vdmVkLCBhdXRv
IGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZW1vdmVkKQorICAgICAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2Vw
dGlvbkNvZGUoZXJyb3IpIH0pOworCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7Cisg
ICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVzb2x2ZShG
aWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNv
cmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9z
dCIgfSk7CisKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVzb2x2ZShtX2lk
ZW50aWZpZXIsIG1ha2VPYmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllclR5cGU+KCppZGVudGlmaWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHBhdGgsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAg
ICAgICBpZiAoIXBhdGgpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2Vi
Q29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAg
ICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShwYXRoLnZhbHVlKCkpKTsKKyAgICB9KTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmgg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM0MGIzMjE0YTRjNjY5YTIwOTBmMDNlZmI2OTE4
NjUxZjViMTQzOTUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oCkBAIC0wLDAgKzEs
NjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUhh
bmRsZUltcGwuaD4KKworbmFtZXNwYWNlIElQQyB7CitjbGFzcyBDb25uZWN0aW9uOworfQorCitu
YW1lc3BhY2UgV2ViQ29yZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7
CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVI
YW5kbGU7Cit9CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBs
IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+
IGNyZWF0ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlv
biYpOworICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZCgpOworCitwcml2YXRlOgorICAgIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
LCBJUEM6OkNvbm5lY3Rpb24mKTsKKworICAgIC8vIEZpbGVTeXN0ZW1IYW5kbGVJbXBsCisgICAg
c3RkOjpvcHRpb25hbDx1aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSB7IHJldHVy
biBtX2lkZW50aWZpZXIudG9VSW50NjQoKTsgfQorICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5
c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlv
bk9yPGJvb2w+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldEZpbGVIYW5kbGUoU3RyaW5nJiYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4m
JikgZmluYWw7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9v
bCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNl
cHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSBm
aW5hbDsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRlUmVj
dXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9p
ZD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmlu
Zz4+JiYpPiYmKSBmaW5hbDsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBtX2lkZW50aWZpZXI7CisgICAgUmVmUHRyPElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9u
OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9u
LmNwcAppbmRleCA4ODk1MDhhYTZjNzMzMjFjNDMzZGI1N2Q5MTE3M2U3MDQ2ODdlNDFhLi4wOGI2
ZjMzY2M4YzA2NGFkNTQ1ODY4ZmRjNWVhNDg3MzhjMjJlNGYyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJXZWJTdG9yYWdlQ29ubmVjdGlvbi5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eS5oIgogI2luY2x1ZGUgIk5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5o
IgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAi
V2ViUHJvY2Vzcy5oIgpAQCAtNDgsNiArNDksMjEgQEAgdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlv
bjo6cGVyc2lzdChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW4K
ICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OlBlcnNpc3Qob3JpZ2luKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OwogfQogCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KENsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25P
cjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGF1dG8mIGNvbm5lY3Rpb24gPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1
cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7CisgICAgY29ubmVjdGlv
bi5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Rmls
ZVN5c3RlbUdldERpcmVjdG9yeShvcmlnaW4pLCBbd2Vha0Nvbm5lY3Rpb24gPSBtYWtlV2Vha1B0
cihjb25uZWN0aW9uKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKV0oYXV0byBpZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAgaWYg
KCFpZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2Vw
dGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJyb3IpIH0pOworCisgICAgICAgIGlmICgh
d2Vha0Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRXhj
ZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAg
ICAgIGF1dG8gaW1wbCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSgqaWRl
bnRpZmllciwgKndlYWtDb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZSh7IH0sIFdURk1vdmUoaW1wbCkp
KTsKKyAgICB9KTsKK30KKwogSVBDOjpDb25uZWN0aW9uJiBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6
Y29ubmVjdGlvbigpCiB7CiAgICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3Vy
ZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VD
b25uZWN0aW9uLmgKaW5kZXggMWMwZTY2MzY5YjU2ZWRiNzBlOTNhODg5ZTMyNTAzNTY2NjkzMzZl
NS4uNDc3NGE3YjA0YjFjY2Q4MGYyMTQ5OTgyNmQ1NDc3NDYwM2M3MTYzZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0
aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0
b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTMxLDYgKzMxLDExIEBAIG5hbWVzcGFjZSBJUEMgewogY2xh
c3MgQ29ubmVjdGlvbjsKIH0KIAorbmFtZXNwYWNlIFdlYkNvcmUgewordGVtcGxhdGU8dHlwZW5h
bWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsK
K30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlN0b3JhZ2VDb25uZWN0aW9uIGZp
bmFsIDogcHVibGljIFdlYkNvcmU6OlN0b3JhZ2VDb25uZWN0aW9uIHsKQEAgLTQwLDYgKzQ1LDcg
QEAgcHVibGljOgogcHJpdmF0ZToKICAgICB2b2lkIHBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRP
cmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7CiAgICAgdm9p
ZCBwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoV2ViQ29y
ZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0
aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgZmlu
YWw7CiAKICAgICBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24oKTsKIH07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzUx
YTFmOGVkNzYzNGRkZTE5MWI0MGI5NmI1MWUzMjVkMDMxMDU4Mi4uZjc5M2EwMzA5YmQyMjVhZWIz
OTA0ODRjYjc5YTY4YzdhZmVhNGYzYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA5LTIw
ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFs
IHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAg
KiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdlL2ZpbGVz
eXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNp
Y3MuaHRtbDogQWRkZWQuCisKIDIwMjEtMDktMjAgIEF5dW1pIEtvamltYSAgPGF5dW1pX2tvamlt
YUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI4MTEwMj8pOiBbIE1hYyBdIG1l
ZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQuaHRtbCBpcyBhIGZsYWt5IHRpbWVvdXQuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzNDM3YTVlMTQ3ZDdkZGE0MGQxYmU5YmNjNzEwOWEy
NjgwNWFlMmFjLi5lMDAyZDFiM2ZiZDMyZjUxODBlNWI3YTEzMWU1NTVkNTJhOTRlYThkIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMyBAQAorMjAyMS0wOS0yMCAg
U2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBz
dXBwb3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9y
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1l
c3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGly
ZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRp
Y2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKwog
MjAyMS0wOS0yMCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IGlucHV0LXNlY3VyaXR5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBmNWRjYWNk
MWUyYTE3M2VlZGZhYmMwMTY0YmRjZmYxYzdlYTllNDdjLi5lNGIzZGNhNDI1NWQzMGVjOWJhZTgw
YjIxMDhjNTdmYTcxMjc2YTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIwMCw2ICsyMDAsNyBA
QCBmYXN0L3NwZWVjaHJlY29nbml0aW9uL2lvcy8gWyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBTa2lwIF0KK3N0b3JhZ2UvZmlsZXN5c3RlbWFj
Y2Vzcy8gWyBTa2lwIF0KIAogIyBhcHAtcHJpdmFjeS1yZXBvcnQgdGVzdHMgcmVseSBvbiBXZWJL
aXRBZGRpdGlvbnMKIGh0dHAvdGVzdHMvYXBwLXByaXZhY3ktcmVwb3J0LyBbIFNraXAgXQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDY5MGQy
NzkzNDJlNmE4ZDk0OTk2OTFiMTlmNWNkOTY2NGJiNDAwOTYuLjFiNGRjOGI2ZGE4MjZkNWRmMjNl
N2ZhODk3ZmQxZWE2NzNiNGVkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKQEAgLTIsNSArMiw1IEBACiBQQVNTIHNob3dEaXJlY3RvcnlQaWNr
ZXIoKSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkgaWZyYW1lcy4KIFBBU1MgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkgaWZyYW1l
cy4KIEZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJlY3Rv
cnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBpZnJhbWUuIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1cml0eUVy
cm9yIiBidXQgZ290ICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElPTjogVHlwZUVycm9y
IgotRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9y
eVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3aW5kb3cuIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1
cml0eUVycm9yIiBidXQgZ290ICJuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKTogUkVK
RUNURUQ6IE5vdFN1cHBvcnRlZEVycm9yIgorRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJl
Y3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJv
eGVkIG9wZW5lZCB3aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5
UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJzaG93RGlyZWN0b3J5
UGlja2VyKCk6IEVYQ0VQVElPTjogVHlwZUVycm9yIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKaW5kZXggNDEyNGI3YmU0ZGNkYWFkNGFiOTMwNzlkYjJkYzBkZTFj
MzI3MmViNC4uMjE1YWI2NjBiZDA0YmViZWI2NTRmODJmMzZlYTEzMzdlMGIwMmE3NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIAot
RkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGluZyB0cmFu
c2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFu
ZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxvYnMgaW4g
SW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBo
YW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIHVzaW5n
IGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTdG9y
ZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGluZyB0cmFuc2FjdGlvbi4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhl
ZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4ZWREQi4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFu
ZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAppbmRleCA4MTVlNzVmNjMyZDRlZmNjOGQ2YjIxOTM0MzJiYTBjY2ZkOTE0NDM4Li44
MzdlYWUxMDYyOGVkZjkzZjE3NTY4Y2I5MjMwYmEyY2I4ZDMzNWM2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNT
YW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlM
IGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMgcmV0dXJucyB0cnVl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBk
aWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRo
ZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBp
c1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVu
dCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJp
bmcgYSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3RvcnkgcmV0dXJucyBmYWxz
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBjb21w
YXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3Rv
cnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVzIHJldHVybnMgZmFsc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50
IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJldHVybnMg
dHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBk
aWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmlu
ZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSByZXR1cm5zIGZhbHNl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5n
IGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9h
ZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZTNjYTdjNDY4ODI1
MGY0NDcxNTg2NTIyYTg4OWNkZWFmZWZkMWY4NC4uMzk1ZWNhNTU0YmRkN2I4YWIwMjJlZDUyYzky
ZDQ0MzFkYzEyYTNjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3Qg
Y2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZyYW1lLCBkZWRpY2F0
ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0CmluZGV4IDdhZjQxMTgzMWRjMGZiNmNiMjY1Yjg0M2IyYjBjZWY3MDNhMDA0YzMu
LjRiMWM1YmUzYjc3ZDhmN2I2MzA0NmY5YTBhMTJkZWE2YzQ4Mjg4MTUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDEyICsxLDEyIEBACiAKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgY3Jvc3Mgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byBhIGRhdGEg
VVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0
byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0YSBVUkkgaWZyYW1l
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEgd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMg
dG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2Fu
ZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgRmFp
bCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIGlmcmFt
ZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgdG8g
YSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZh
aWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1l
c3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRh
dGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRv
IHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYSB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2Vz
IHRvICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJv
eGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBv
cnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKaW5kZXggNTNlOTBlMjNjNDkxZjU4OGQxYjViNmViZWMyMTIyZDdh
Y2NlODA2Yi4uODIxYzYxYzlmNGYxZWE0ZmIxNWNlMTExZDlmYzJmNzA2YTBiYmM0ZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1l
c3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmln
aW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNh
bWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Ig
aWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZSBzcmNkb2Mu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBt
ZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3Nh
Z2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBlNWRlYzA4YTk1
M2NhNDA2ZTFhNGY1OThkZDhlNDRmMGFhNzk3N2I1Li5hOTM4NDdkMDAzNWIzYmY3ZWFiNTU5ZTA0
ODA0NWQwNmNiMDZiNTgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1l
c3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2Ug
cG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBz
YW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1l
c3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNDUxMDY1ZTMyMmRhZmUwNGJlYWUyMTQ5
ZTUxNDBhYTY1YzM2ZjcwZC4uODFmNmY2MTA3ZjRhZmZhMTljMzg4ZWUxY2M4ZDA0YjFhM2Q4NGVk
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2Fn
ZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAog
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFyZWQgIHdv
cmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKaW5kZXggODY0NWQ5M2VlNTcyMTU3OWJiOWVmYzUyODI0NjQ0NDk3
MjVjMTNlNy4uM2NlOWU4MzIyMGVkZDJiYmZhNzQ2ZDRjZWIyOTRkNjcwYTdkNWM1ZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZy
YW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUg
b3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Ig
aWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBmMDk1OTk1ODk2M2YyZjRkNmE5N2U4YTdiYTczNzRm
YjUxZTgyZDRmLi42ZDk2MjY1ODQxOThiZTkwNzgxZWZjOTdiMWQwZmRjOGZiMWY4YTg2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Ut
d2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiB3aW5kb3cuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNzJmZjNmNTc0MTJkZDA4ZWM2YTRiZjNjMDVmYzM2
OGI4OWFmYWE2Ni4uMjRiNDZkZDU5YWNhMDc5MDRmZDY3Yjk5MTFmNzA3MDZhZDlhMjRiZCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3Jr
ZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgZGVkaWNh
dGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJl
ZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDRjYTBmOTQ3MTBjOGUzZTA1Zjk1YTA3NDcwOWNkODdh
MDdiMjg1N2QuLjdlNjYxY2UwZjc5MzRmNjkzZDI2ZjM5MTdlMDc2ODQwZTcxY2RmOWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5IEBACiAKLUZBSUwg
cmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSB0byByZW1vdmUg
YW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1w
dHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUg
YWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFk
eSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCByZW1vdmUoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVj
dG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92
ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNo
b3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUgb3B0aW9u
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAxZmM0NzQ4
MDYyM2VhYjkzYmM5NmE5MzEwYTdjNTY2M2Y4NTg4MjMwLi43ODE3MWZmMGU0ODc4ZWI0ODk5MDE1
MDljZWI0NTgzZDg1N2E2Njg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJl
Y3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1G
QUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlz
dGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGlyZWN0b3J5
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVl
KSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEg
ZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1l
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBh
IHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9yeSBleGlzdHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSB3
aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZB
SUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0
aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9
ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhp
c3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFkeSBleGlz
dHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggIi4u
IiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9y
eSBleGlzdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAppbmRleCAzMzZlNGRjNzM5MWIwODNmZDA0YWJiODE2NGJmMjYwYjBj
ZWQxNWQ4Li5hZTU1ZDEzNGQyNzQyNWUwN2NhMWM4NmZhNjdhNmZkNGNlODdmNTRlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFu
ZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDEzICsxLDEzIEBACiAKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVj
dHMgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGZpbGUg
Zm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0
ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1
ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGgg
ZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxl
SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRo
IHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2Vw
YXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVh
dGVzIGFuIGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4
aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhh
bmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRob3V0IGVyYXNpbmcg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10
cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoIGVt
cHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxl
KCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hl
biB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA5MmJhMDA2MWMxMTJkYjk5YTY5NmMwM2ZiNGFiMGE4NzEwYWIz
YmUxLi5mZTFmZmE5YzQ1YmY3ODkxOGM2OGJkODEyMjlkNzJlZTAzMDZhNGM1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw4ICsxLDgg
QEAKIAotRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9lc24ndCBjcmFz
aCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBAQGFzeW5jSXRlcmF0b3I6
IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXRlcmF0aW9uIHdoaWxlIGl0ZXJh
dG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3QgY3Jhc2gg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBAQGFzeW5jSXRlcmF0b3I6IGZ1bGwg
aXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZW50cmll
czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxl
Y3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1y
ZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGFjNmZjMTk0ODQ3OWMxN2Q5
OGIwMzhiNzQ3ZDZiOTMwNmRiYzA5MmMuLjI4MTQ3MjI1YmRhODQ5MjhkYzMyNjc2NDEwMGE0OWZm
ZGEyYmMwMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dApAQCAtMSwxMSArMSwxMSBAQAogCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVt
b3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVF
bnRyeSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGFuIGVt
cHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5
IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1wdHkgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRy
eSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggYSBw
YXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmls
ZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVu
dHJ5KCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBv
biBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1wdHkg
bmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92
ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggYSBwYXRo
IHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNv
bHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNTU3MWYx
MWQxY2YwMGQxMzllZmE5ZjhkYzZlOGM0MmMwYjFiMzM0MC4uZjVlNjUxYjFlZjFjN2YxMTk1YzZh
NTdhMDcyNzM2NDIyNzEzYzI2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBSZXNvbHZlIHJldHVybnMgZW1w
dHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCB3aXRoIG5v
bi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5IGFycmF5
IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJl
c29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3Rl
cnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgbnVs
bCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0
ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2lu
ZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1j
cmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZl
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMzMwMTBkNzE4NDUyMmJiMzcwNWViMzhiNzM0YTNm
YTBkMjY4NjZmYy4uM2I4YzBkOGRhYjAxODBlOTIzYzQ0Mzk3ZjY0MWM2NWRjYWU3ZmQ5MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5j
LWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3Jl
YXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53
aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEF0dGVtcHQgdG8gY3Jl
YXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRsZS4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAppbmRleCA5Y2YwMTlkMjU2OWNmZjQ5OGMxMDRmMTVjN2FmYWRhMWMxOTdhNmM3Li5mN2MxNzA3
M2FlZWZmOWFhZjBiNzI4Y2NiZTJhYjhlMWRkNjFhNTc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgZ2V0RmlsZSgpIHByb3Zp
ZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGUoKSBwcm92aWRlcyBhIGZpbGUg
dGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZp
bGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggYTA2OTI2NjFkZDIzZDEwYzA5ZmZkNTllNmRiZTBiMGM4ZTJjNjBiYS4uZDE1MjZjNTk5
NTg2NjI1ZjMxNmE3Njc5OGY3MDE3NDhiODQ2ZmVlMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1w
aXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZBSUwgY2Fu
IGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRo
IGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRo
IG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBB
cnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBl
ZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBi
ZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0g
b2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3Jp
dGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CmluZGV4IGY5N2U4MTJkNzcyYTY1NTE1N2E1ZGFjZWZjMTM1ZmMwNjZiMGEyMmMuLjM3
ZjdhNjRhZTlhNWYwMWRkZDg3ZjRhY2RhODc5YTU0YjY2NjQ4ZTggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVT
dHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzMSArMSwzMSBAQAogCi1G
QUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkg
ZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGgg
V3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8gYW4gZW1wdHkg
ZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCBjb25zZWN1
dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3Jp
dGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5kcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdp
dGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFuZCBhIHZhbGlkIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxl
ZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQgYmV5b25kIHRoZSBl
bmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3Jp
dGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04IHN0cmlu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBz
dHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxp
bmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJl
bW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRl
czogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xvc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGFm
dGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
YXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5IHN1Y2NlZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogd3JpdGFi
bGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBpZiBmaWxlIGlzIHJl
bW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0V3JpdGVyKCkg
Y2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQ
YXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBhcmFtIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiBzZWVrIG1p
c3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3VsZCBy
ZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgd3JpdGUoKSB3aXRo
IGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMgd2l0aG91dCBwb3Np
dGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBm
aWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3
cml0ZSgpIGNhbGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0
cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBX
cml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFuZCBh
IHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkg
Y2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9uZCB0aGUg
ZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdXRmLTggc3RyaW5nIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGgg
dW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxpbmUgZW5kaW5nIHByZXNl
cnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBl
bXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZlciBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFp
bHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBh
dG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xv
c2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0
ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3BlcmF0aW9uIG1heSBz
dWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczog
d3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBpZiBmaWxl
IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRXcml0ZXIo
KSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFy
YW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBhcmFtIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHNlZWsgbWlzc2luZyBwb3Np
dGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0
aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVqZWN0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKaW5kZXggNTAwOTI1NGE0ZjEwZTI3OTNiZDY0Yzg0MTk1NTkyNDUyMTJmMmQxMS4uZTM4NTFm
Y2EzM2U0YzlkODM5NjE5MWI2ZDFkYmFlYWNmMGRhMzg5NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgdHJ1bmNhdGUoKSB0
byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHRy
dW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGZhaWxz
IHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlz
IHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3Jp
dGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiBmYWxz
ZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBlbXB0eSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlv
bjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwgc3RyZWFt
IGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCitGQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFy
ZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQg
ZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBj
cmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3JpdGFibGUg
ZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTog
ZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGN1cnNvciBwb3NpdGlv
bjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBpcyB1bmxv
Y2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDIxZGVkNTQ5
OTZlN2YwYWNjODgwNmZhN2U3ZTlhMjdlN2NmY2U0Ni4uZDhkY2ViZTQ4NzEwMjMwOTM0NTNhZmFm
YjhmM2QyNzJiZGY5M2Y2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTg2NCwzICs4NjQsNSBAQCBmdWxsc2NyZWVuL2Z1bGwtc2NyZWVuLWVudGVyLXdo
aWxlLWV4aXRpbmcuaHRtbCBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wZXJtaXNzaW9ucy8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c3RvcmFnZS8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzLyBbIFBhc3MgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFBhc3Mg
XQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGly
ZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iZWVmN2I2ZWM3Y2RiMGE2ZTEzMjEzMDliYWZmMDVlOTQ5NDExYmZkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9y
eS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitUaGlzIHRlc3Qg
Y2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJvb3RIYW5kbGUubmFtZSBp
cyAiIgorUEFTUyByb290SGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BBU1MgZGlySGFuZGxl
Lm5hbWUgaXMgImRpciIKK1BBU1MgZGlySGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BBU1Mg
aXNTYW1lRW50cnkgaXMgZmFsc2UKK1BBU1MgZmlsZUhhbmRsZS5uYW1lIGlzICJmaWxlIgorUEFT
UyBmaWxlSGFuZGxlLmtpbmQgaXMgImZpbGUiCitQQVNTIGhhbmRsZU5hbWVzLmxlbmd0aCBpcyAy
CitQQVNTIGhhbmRsZU5hbWVzWzBdIGlzICJkaXIiCitQQVNTIGhhbmRsZU5hbWVzWzFdIGlzICJm
aWxlIgorUEFTUyBjcmVhdGVFcnJvci50b1N0cmluZygpIGlzICJOb3RGb3VuZEVycm9yOiBUaGUg
b2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4iCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi44MzczZDg2ZTM3ZWVkODUxNGY0Mzc2MzRlZmQ0ZTMwYThmODBmZGM0Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2Rp
cmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKQEAgLTAsMCArMSwxMDAgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigi
VGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLiIpOworCit2YXIgcm9vdEhhbmRsZSwgZGlySGFuZGxlLCBmaWxlSGFuZGxlLCBp
c1NhbWVFbnRyeSwgaGFuZGxlTmFtZXMsIGNyZWF0ZUVycm9yOworCitmdW5jdGlvbiBmaW5pc2hU
ZXN0KGVycm9yKQoreworICAgIGlmIChlcnJvcikgeworICAgICAgICB0ZXN0RmFpbGVkKGVycm9y
KTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGdldERpcmVjdG9y
eSgpIHsKKyAgICBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKS50aGVuKChoYW5kbGUp
ID0+IHsKKyAgICAgICAgcm9vdEhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyb290SGFuZGxlLm5hbWUiLCAiIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicm9vdEhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjcmVhdGVE
aXJlY3RvcnlIYW5kbGUocm9vdEhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7Cisg
ICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjcmVhdGVE
aXJlY3RvcnlIYW5kbGUoZnJvbUhhbmRsZSkgeworICAgIGZyb21IYW5kbGUuZ2V0RGlyZWN0b3J5
SGFuZGxlKCJkaXIiLCB7ICJjcmVhdGUiIDogdHJ1ZSB9KS50aGVuKChoYW5kbGUpID0+IHsKKyAg
ICAgICAgZGlySGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImRpckhhbmRsZS5uYW1lIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImRpckhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjaGVja0lmU2FtZUVudHJ5
KHJvb3RIYW5kbGUsIGRpckhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAg
ICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjaGVja0lmU2Ft
ZUVudHJ5KGhhbmRsZTEsIGhhbmRsZTIpCit7CisgICAgaGFuZGxlMS5pc1NhbWVFbnRyeShoYW5k
bGUyKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaXNTYW1lRW50cnkgPSByZXN1bHQ7Cisg
ICAgICAgIHNob3VsZEJlRmFsc2UoImlzU2FtZUVudHJ5Iik7CisgICAgICAgIGNyZWF0ZUZpbGVI
YW5kbGUoZGlySGFuZGxlLCB0cnVlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAg
ICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIGNyZWF0ZUZpbGVI
YW5kbGUoZnJvbUhhbmRsZSwgY3JlYXRlKSB7CisgICAgbGV0IG9wdGlvbnMgPSB7ICJjcmVhdGUi
IDogY3JlYXRlIH07CisgICAgZnJvbUhhbmRsZS5nZXRGaWxlSGFuZGxlKCJmaWxlIiwgb3B0aW9u
cykudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGZpbGVIYW5kbGUgPSBoYW5kbGU7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5uYW1lIiwgImZpbGUiKTsKKyAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLmtpbmQiLCAiZmlsZSIpOwor
ICAgICAgICByZXNvbHZlUGF0aCgpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAg
ICBpZiAoY3JlYXRlKSB7CisgICAgICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBjcmVhdGVFcnJvciA9IGVycm9yOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNyZWF0ZUVycm9yLnRvU3RyaW5nKCkiLCAiTm90
Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUuIik7CisgICAgICAg
IGZpbmlzaFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVzb2x2ZVBhdGgoKSB7Cisg
ICAgcm9vdEhhbmRsZS5yZXNvbHZlKGZpbGVIYW5kbGUpLnRoZW4oKHJlc3VsdCkgPT4geworICAg
ICAgICBoYW5kbGVOYW1lcyA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmUoImhhbmRsZU5hbWVz
Lmxlbmd0aCIsICIyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFuZGxlTmFt
ZXNbMF0iLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFuZGxlTmFt
ZXNbMV0iLCAiZmlsZSIpOworICAgICAgICByZW1vdmVFbnRyeShkaXJIYW5kbGUsICJmaWxlIik7
CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOwor
ICAgIH0pOworfQorCitmdW5jdGlvbiByZW1vdmVFbnRyeShmcm9tSGFuZGxlLCBuYW1lKSB7Cisg
ICAgZnJvbUhhbmRsZS5yZW1vdmVFbnRyeShuYW1lKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAg
ICAgLy8gTm8gZXJyb3IgbWVhbnMgaXQgaXMgcmVtb3ZlZC4KKyAgICAgICAgY3JlYXRlRmlsZUhh
bmRsZShkaXJIYW5kbGUsIGZhbHNlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAg
ICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2lmICh3aW5kb3cudGVzdFJ1bm5l
cikgeworICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGdldERpcmVjdG9yeSgpOworfSBl
bHNlIHsKKyAgICBmaW5pc2hUZXN0KCJ3aW5kb3cudGVzdFJ1bm5lciBpcyBub3QgYXZhaWxhYmxl
Iik7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="commit-queue"
          id="462221"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438743</attachid>
            <date>2021-09-20 15:51:51 -0700</date>
            <delta_ts>2021-09-20 16:28:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920155150.patch</filename>
            <type>text/plain</type>
            <size>186095</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi4w
ZTU3NzI4NWQwODE0ZDJkNTk5OTRhYzkyYTYzMjQzMjJjZTY1ZTAzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgxIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9k
ZWNsYXJlZCk6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAo
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRl
U2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAy
ZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAg
ICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBN
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVs
ZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEy
ZTEuLmRiYjA4YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
IAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9t
aXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01h
bGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5n
JiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBs
PiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAK
LUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRs
ZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQog
Ci12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3Ry
aW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVI
YW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpHZXRGaWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0
ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAg
ICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9
KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRp
b25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90
U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBs
KCkuZ2V0RGlyZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBb
cHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAg
ICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNl
LnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJl
c29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpyZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZl
cnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsg
Tm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAg
ICBpbXBsKCkucmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtw
cm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAg
ICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2Up
Cit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRs
ZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4m
JiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRl
ZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRs
ZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAg
IHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43
YzQ3ZTc1NWVjMGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAg
V1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1Ymxp
YzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1Ymxp
YzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0
aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAg
dm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRG
aWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZp
bGVIYW5kbGU+PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcm
IG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZv
aWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9w
dGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNv
bnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURM
VVNWU3RyaW5nPj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9u
YWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5n
JiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlv
bnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lz
dGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUx
MzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2Vh
MjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYg
KzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJK
U0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+
CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQor
UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0
cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lz
dGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVI
YW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVt
SGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vz
cy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlk
YzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3Mg
RmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0
ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5k
bGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmls
ZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwog
ICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYm
KTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkg
eyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRs
ZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3
NDQ4Y2ZlNWE2MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01B
S0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFu
ZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5n
JiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhh
bmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkp
CisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFu
ZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVt
SGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0
ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRs
ZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9t
aXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1w
bCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5
YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1
OTRhMDU4MzQyZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNz
IFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBw
dWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FM
TE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lz
dGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAg
RmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0
ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBt
X2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7
IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQo
KTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9N
UHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmls
ZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJv
dGVjdGVkOgotICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRs
ZUltcGw+JiYpOwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9Owog
ICAgIFN0cmluZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5k
ZXggMjA4ZTc0NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYz
YzVjODc3ZGU2ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApA
QCAtMjksNiArMjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAg
ICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVu
YWJsZWRCeVNldHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtSGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1
NDcwNTA4YWY3ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDog
cHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRp
b25hbDx1aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBn
ZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4m
Jik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIz
MWY5NGI2NmFmMDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFh
YTU0NjExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15
U3RvcmFnZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAg
IHsKICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOwor
ICAgICAgICB9CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVj
dGlvbigpIGZpbmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
U3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9y
YWdlQ29ubmVjdGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhj
NzU1MzMuLjY2ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBA
IC0yNSwxMSArMjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47
CiAKIGNsYXNzIFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNv
bm5lY3Rpb24+IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3Jh
Z2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xp
ZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFn
ZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMw
OWUuLjdjMTY4OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcs
OCArMjcsMTAgQEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xp
ZW50T3JpZ2luLmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZp
Z2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYv
SXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3Rv
cmFnZU1hbmFnZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBw
cm9taXNlKQorc3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3Rv
cmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307
CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1h
bmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJO
YXZpZ2F0b3IgZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAg
ICAgYXV0byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsK
ICAgICBpZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRp
b24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Cisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMg
aW52YWxpZCJfcyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKKyAgICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNv
bm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVj
dGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlk
Il9zIH07CiAKLSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwot
ICAgIGlmICghb3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1
cm4gQ29ubmVjdGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5k
YXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAg
YXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBp
ZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2Vw
dGlvbigpKTsKIAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50
b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShw
cm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbklu
Zm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAg
IHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5l
Y3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJz
aXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAg
ICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZv
T3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09y
RXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
Y29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0
byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBp
ZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBh
dXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICgh
Y29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IElu
dmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rp
b24tPnBlcnNpc3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgp
IH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
eworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJl
bGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9u
LnBlcnNpc3QoV1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1v
dmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5y
ZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFj
ZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1l
bnRlZCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0
aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJu
IGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3Zl
KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0
byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9u
KCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVl
KCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFk
YTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3
MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNl
OwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0
aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFn
ZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsK
QEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3Jh
Z2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsK
KyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBX
ZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgz
NWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4
OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRh
YmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9q
cy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5j
cHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIz
ZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYw
ZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBF
Qjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1ND
b25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQy
NTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNB
MjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAv
KiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYg
LyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgx
RjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5
NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAw
RkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1h
Z2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAw
MzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4
LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87
IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0
ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nl
c3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMy
QzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1
M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1
ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3
RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlG
MTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2du
aXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFs
dGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQw
QzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2
RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2
RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVk
T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlh
Q2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JE
MDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZC
MUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYz
QjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1
QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywK
KwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9t
LmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVj
dGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRN
TENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkw
RiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcg
QEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Ki8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAq
LywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwg
Ki8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0Zp
bGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBT
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICsz
MjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxl
RW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVD
NDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJC
QUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4
NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNp
bmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVl
IHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAg
IHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsK
K30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCos
IEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYm
IGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxl
LmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNy
ZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSho
YW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2
ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVk
MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNj
cmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlw
dEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4
IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5
MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VX
b3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZjMzUyZTg0YjU0MjM5YmEyODZlNDYx
NGFmMzgyNzNmOTE2YWEyYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgKQEAgLTAsMCArMSw3MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRp
b25Db2RlLmg+CisjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3QgeworICAg
IEVtcHR5LAorICAgIEZpbGVOb3RGb3VuZCwKKyAgICBJbnZhbGlkTmFtZSwKKyAgICBJbnZhbGlk
TW9kaWZpY2F0aW9uLAorICAgIFR5cGVNaXNtYXRjaCwKKyAgICBVbmtub3duCit9OworCitpbmxp
bmUgV2ViQ29yZTo6RXhjZXB0aW9uQ29kZSBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IgZXJyb3IpCit7CisgICAgc3dpdGNoIChlcnJvcikgeworICAgIGNhc2Ug
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kOgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6Tm90Rm91bmRFcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb246CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpJbnZhbGlkTW9kaWZpY2F0aW9uRXJyb3I7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2g6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpUeXBlRXJyb3I7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJu
IFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlVua25vd25FcnJvcjsKKyAgICB9Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHsKKyAgICB1c2luZyB2
YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHksCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWROYW1lLAorICAgICAgICBX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb24sCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24KKyAgICA+OworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hMzE0NGU5OWJhMjQyNWM1ODMzZmQ1MzRhNGFjMjlmYzcwYzViOGM0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmNwcApAQCAtMCwwICsxLDEzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIgorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworI2lmIE9TKFdJTkRPV1MpCitj
b25zdGV4cHIgY2hhciBwYXRoU2VwYXJhdG9yID0gJ1xcJzsKKyNlbHNlCitjb25zdGV4cHIgY2hh
ciBwYXRoU2VwYXJhdG9yID0gJy8nOworI2VuZGlmCisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIG1hbmFn
ZXIsIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIG5hbWUpCisg
ICAgOiBtX2lkZW50aWZpZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyOjpnZW5l
cmF0ZSgpKQorICAgICwgbV9tYW5hZ2VyKG1ha2VXZWFrUHRyKG1hbmFnZXIpKQorICAgICwgbV90
eXBlKHR5cGUpCisgICAgLCBtX3BhdGgocGF0aCkKKyAgICAsIG1fbmFtZShuYW1lKQoreworICAg
IEFTU0VSVCghbV9wYXRoLmlzRW1wdHkoKSk7CisKKyAgICBzd2l0Y2ggKG1fdHlwZSkgeworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeToKKyAgICAgICAg
RmlsZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKG1fcGF0aCk7CisgICAgICAgIHJldHVybjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxlOgorICAgICAgICBp
ZiAoRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhtX3BhdGgpKQorICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW06Om9wZW5GaWxlKG1fcGF0aCwgRmlsZVN5
c3RlbTo6RmlsZU9wZW5Nb2RlOjpXcml0ZSk7CisgICAgICAgIEZpbGVTeXN0ZW06OmNsb3NlRmls
ZShoYW5kbGUpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNT
YW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOworICAgIGlmIChwYXRo
LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKG1fcGF0aCA9PSBwYXRoKTsKK30KKwordm9pZCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAg
aWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgLy8gaHR0cHM6
Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3ZhbGlkLWZpbGUtbmFtZQorICAg
IGlmIChuYW1lID09ICIuIiB8fCBuYW1lID09ICIuLiIgfHwgbmFtZS5jb250YWlucyhwYXRoU2Vw
YXJhdG9yKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0g
RmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAg
bV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgdHlwZSwgcGF0aCwgbmFtZSwgY3Jl
YXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OlR5cGU6OkZpbGUsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6Omdl
dERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChz
dGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVx
dWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5LCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRy
eShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRpcmVjdG9yeSkKKyAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5
QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5
c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBlKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3Vu
ZCk7CisKKyAgICBzd2l0Y2ggKHR5cGUudmFsdWUoKSkgeworICAgIGNhc2UgRmlsZVN5c3RlbTo6
RmlsZVR5cGU6OlJlZ3VsYXI6CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxl
U3lzdGVtOjpkZWxldGVGaWxlKHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAo
IWRlbGV0ZVJlY3Vyc2l2ZWx5KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KEZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lz
dGVtOjpkZWxldGVOb25FbXB0eURpcmVjdG9yeShwYXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6RW1wdHkpOworICAgIGRlZmF1bHQ6CisgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgfQorfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1f
bWFuYWdlcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBhdXRvIHBhdGggPSBtX21h
bmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0sIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKworICAgIGF1dG8gcmVzdFBhdGggPSBwYXRo
LnN1YnN0cmluZyhtX3BhdGgubGVuZ3RoKCkpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3RQ
YXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42OWJmYzk3OGQwYjc1M2NmYzk3MzQ5OTJlNzFkZjc3MGNlNGUyYjhlCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2Vu
dW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4geworICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3MgVHlwZSA6IGJv
b2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZSk7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIGNvbnN0IFN0cmlu
ZyYgcGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorCisgICAgdm9pZCBpc1NhbWVFbnRy
eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIGdldERpcmVj
dG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZl
Y3RvcjxTdHJpbmc+PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgor
ICAgIHZvaWQgcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyPiBtX21hbmFnZXI7CisgICAgVHlwZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fcGF0aDsK
KyAgICBTdHJpbmcgbV9uYW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjQyNzE3
ZTcxZGQ4OWFhNjQxMjYyZThjNTE0OTIzMDVlZGQzYTIzOAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworZW51bSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlIHsgfTsKK3Vz
aW5nIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjNlMjM5YjdjNGVlMzAyMmMwYTdkOTU3NTZlMmZkZDU0YTA2MzQ1NTUKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCkgPSBkZWZhdWx0
OworCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxl
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghbV9oYW5kbGVzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKTsKKworICAgIG1faGFuZGxlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQ
dHIoaGFuZGxlKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
dW5yZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllcikKK3sKKyAgICBBU1NFUlQobV9oYW5kbGVzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKwor
ICAgIG1faGFuZGxlcy5yZW1vdmUoaWRlbnRpZmllcik7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgaWYgKGF1dG8g
aGFuZGxlID0gbV9oYW5kbGVzLmdldChpZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIGhhbmRs
ZS5nZXQoKTsKKworICAgIHJldHVybiBudWxscHRyOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjZjYzQzYzNhZmY2YzExY2VmMTNiYzNjYzdmMGYyODgwMjMyNTA3YgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsKKworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSB7CisgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitwdWJsaWM6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSgp
OworICAgIHZvaWQgcmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSYpOworICAgIHZvaWQgdW5yZWdpc3RlckhhbmRs
ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAgIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlKiBnZXRIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsK
KworcHJpdmF0ZToKKyAgICBIYXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmUwMzRkYTUwYWJmZjFmMDlmNzJhNGUyNzA5ZGJmNWQ2YjE5MzBmMWYKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMCwwICsxLDk5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgor
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIo
U3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkp
CisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkp
Cit7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcigpCit7CisgICAgZm9yIChhdXRvIGlkZW50aWZpZXIgOiBtX2hhbmRsZXMua2V5cygpKQor
ICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaWRlbnRpZmllcik7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSB0eXBlLCBjb25zdCBT
dHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7
CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBhdGgpOwor
ICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6
OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmlsZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4
aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpmaWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYg
KCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAg
ICAgYXV0byBleGlzdGluZ0hhbmRsZVR5cGUgPSAoZXhpc3RpbmdGaWxlVHlwZS52YWx1ZSgpID09
IEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpSZWd1bGFyKSA/IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpUeXBlOjpGaWxlIDogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeTsK
KyAgICAgICAgaWYgKGV4aXN0aW5nSGFuZGxlVHlwZSAhPSB0eXBlKQorICAgICAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRsZSA9IG1ha2VVbmlx
dWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBwYXRoLCBuYW1lKTsKKyAg
ICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIgPSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAg
ICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5zdXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZd
IHsKKyAgICAgICAgbV9jb25uZWN0aW9ucy5hZGQoY29ubmVjdGlvbik7CisgICAgICAgIHJldHVy
biBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4geyB9OworICAgIH0p
Lml0ZXJhdG9yLT52YWx1ZS5hZGQobmV3SGFuZGxlSWRlbnRpZmllcik7CisgICAgbV9yZWdpc3Ry
eS5yZWdpc3RlckhhbmRsZShuZXdIYW5kbGVJZGVudGlmaWVyLCAqbmV3SGFuZGxlKTsKKyAgICBt
X2hhbmRsZXMuYWRkKG5ld0hhbmRsZUlkZW50aWZpZXIsIFdURk1vdmUobmV3SGFuZGxlKSk7Cisg
ICAgY29tcGxldGlvbkhhbmRsZXIobmV3SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RW1wdHkpOworfQorCitjb25zdCBTdHJpbmcmIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjo6Z2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
cikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy5maW5kKGlkZW50aWZpZXIpOworICAg
IHJldHVybiBoYW5kbGUgPT0gbV9oYW5kbGVzLmVuZCgpID8gZW1wdHlTdHJpbmcoKSA6IGhhbmRs
ZS0+dmFsdWUtPnBhdGgoKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIGlmIChh
dXRvIGhhbmRsZXMgPSBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZmluZChjb25uZWN0aW9uLnVuaXF1
ZUlEKCkpOyBoYW5kbGVzICE9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQoKSkgeworICAgICAg
ICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVlKSB7CisgICAgICAg
ICAgICBtX2hhbmRsZXMucmVtb3ZlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgYXV0
byBoYW5kbGUgPSBtX2hhbmRsZXMudGFrZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgICAg
IG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAg
fQorICAgICAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24ucmVtb3ZlKGhhbmRsZXMpOworICAgICAg
ICBtX2Nvbm5lY3Rpb25zLnJlbW92ZShjb25uZWN0aW9uKTsKKyAgICB9Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgY3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3RvcnksIG1fcGF0aCwgZW1wdHlTdHJpbmcoKSwgdHJ1
ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xN2QxYjllMmQyNzcy
NjgxMTQyMTg2MmViYjcxODIwNzk5NDY3MjUyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBA
IC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
K3B1YmxpYzoKKyAgICBleHBsaWNpdCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYg
cGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoKTsKKworICAgIHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlv
biYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNv
bnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4s
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICBjb25zdCBTdHJpbmcmIGdldFBhdGgo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25D
bG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnkoSVBDOjpDb25u
ZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKwor
cHJpdmF0ZToKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkmIG1fcmVnaXN0cnk7CisgICAgV2Vha0hhc2hTZXQ8SVBDOjpDb25uZWN0aW9uPiBt
X2Nvbm5lY3Rpb25zOworICAgIEhhc2hNYXA8SVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCwgSGFz
aFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+PiBtX2hhbmRsZXNCeUNvbm5l
Y3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCAz
NjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMzM2M3Li40YmMyYjA0MmJjNzlkMzlh
NzdlMGQzZTY1N2YzN2RkMTM5YTc3MTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcApA
QCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk5ldHdvcmtT
dG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUg
Ik5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0NyeXB0b0RpZ2VzdC5oPgpAQCAtNDEs
NiArNDMsNyBAQCBSZWY8TmV0d29ya1N0b3JhZ2VNYW5hZ2VyPiBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSQogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBT
dHJpbmcmIHBhdGgpCiAgICAgOiBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiAgICAgLCBtX3F1ZXVl
KFdvcmtRdWV1ZTo6Y3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0LlN0b3JhZ2UiKSkKKyAgICAsIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeShtYWtlVW5pcXVlUmVmPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnk+KCkpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKIApAQCAtNTMsNiArNTYsOCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwog
fQogCitOZXR3b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKSA9IGRl
ZmF1bHQ7CisKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdGFydFJlY2VpdmluZ01lc3Nh
Z2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTY1LDYgKzcwLDEwIEBAIHZvaWQgTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29u
bmVjdGlvbiYKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCiAgICAgY29ubmVjdGlv
bi5yZW1vdmVXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKTsKKyAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwcm90ZWN0ZWRDb25uZWN0aW9u
ID0gbWFrZVJlZihjb25uZWN0aW9uKV0oKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3Rv
cmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAg
ICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVk
Q29ubmVjdGlvbi5nZXQoKSk7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNv
bnN0IFN0cmluZyYgc3RyaW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsNiArMTIw
LDU5IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6
OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1
ZSk7CiB9CiAKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0
b3J5KElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIobV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmdldCgpKS5nZXREaXJlY3Rv
cnkoY29ubmVjdGlvbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0
YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBoYW5kbGUtPmlzU2Ft
ZUVudHJ5KHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0
aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+Z2V0RmlsZUhhbmRsZShjb25uZWN0aW9uLCBu
YW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQor
Cit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRs
ZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnko
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFu
ZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisg
ICAgaGFuZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVz
b2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7Cisg
ICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5y
ZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggZjZkYWVk
MTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUwYWQ4ZWY1MGExYjBhYzYzNzlk
OGI5OTA0YjUzM2QzNGY2YTNkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaApAQCAtMjYsNiAr
MjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklE
Lmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIG5hbWVzcGFjZSBX
ZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgSVBDOjpDb25u
ZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIGZpbmFsIDog
cHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdlcj4gY3JlYXRlKFBBTDo6U2Vz
c2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwogCkBAIC00OCwxNCArNTIsMjEgQEAgcHVibGlj
OgogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCwg
Y29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKCk7CiAgICAg
T3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAoaW1w
bGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3NhZ2UgSGFuZGxl
cnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAg
ICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShJ
UEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnko
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQg
Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZv
aWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7
CisgICAgdm9pZCByZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAg
ICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpv
cHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKIAog
ICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAgIFJlZjxXb3JrUXVldWU+IG1fcXVl
dWU7CkBAIC02Myw2ICs3NCw4IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3Nh
bHQ7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxP
cmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnM7CiAgICAg
SGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9y
YWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKworICAgIFVuaXF1
ZVJlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFn
ZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUwZThkZTg5OGZmMzk5
MjZjYjg2NDBlYTEwZjE3OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFhMDY0NTM4NTE3ZTBjNzhjNmM1
NGE0ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAt
MjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgewogICAg
IFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wg
cGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxlU3lzdGVtR2V0RGly
ZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAoc3RkOjpvcHRp
b25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmll
ciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5
bmMgV2FudHNDb25uZWN0aW9uCisgICAgSXNTYW1lRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4gKGJvb2wgcmVzdWx0KSBBc3lu
YworICAgIEdldEZpbGVIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+
IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
PiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
IGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5n
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4
X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5l
Y3Rpb24KKyAgICBSZW1vdmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkg
LT4gKGJvb2wgcmVtb3ZlZCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvciBlcnJvcikgQXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxT
dHJpbmc+PiBwYXRoLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
IGVycm9yKSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggNzVhMWFlZDI0
OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2NTE4MzhhMzEzOGM5M2JmNjli
YmU1NTZhY2Q0ZmVlY2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsy
Niw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNlIFdlYktpdCB7
CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXRNb2RlIDog
Ym9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwzNCBAQCBwdWJs
aWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewogICAgIH0KKwog
ICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7IH0KICAg
ICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUgPSBtb2RlOyB9
CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
KQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAg
ICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVj
dGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdlUGF0aChjb25zdCBTdHJpbmcm
IHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1fcm9vdFBh
dGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGlu
Z0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmllcik7CisgICAgfQorCisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgeworICAgICAgICBpZiAo
IW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4odHlwZVN0
b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKworICAgICAgICByZXR1cm4gKm1f
ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJpdmF0ZToKICAgICBTdHJpbmcg
bV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwogICAgIFN0b3JhZ2VCdWNrZXRN
b2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZmb3J0IH07CisgICAgc3RkOjp1
bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9maWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIo
U3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAogT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsKIAotdm9pZCBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0
aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICBpZiAobV9kZWZh
dWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRCdWNrZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29u
bmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0JiBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0
cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0QnVja2V0KQogICAgICAgICBtX2RlZmF1bHRC
dWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0aCwgImRlZmF1bHQiX3MpOwog
Ci0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0
ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30KKwordm9pZCBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAgbV9wZXJzaXN0ZWQgPSB0cnVlOworICAgIGRl
ZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30K
KworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lz
dHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVja2V0KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIu
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLmJj
NjJjZjQyMmY1YTM1ZGQyZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisKIGNs
YXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
IHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
KTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKTsKIAorICAgIHZvaWQgY29ubmVjdGlvbkNs
b3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcGVyc2lzdGVkOyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeSYpOwogCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tl
dE1vZGUgOiBib29sOwogICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tl
dCYgZGVmYXVsdEJ1Y2tldCgpOwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+
IG1fZGVmYXVsdEJ1Y2tldDsKICAgICBTdHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgub3Jp
ZyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU0MjE1YjNjNzAwYmQ0OTlkMDZlM2I5MDRjMTRlZmQ2
NTI4OWYzMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKQEAgLTAsMCArMSw1MSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdlciB7Cisg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgZXhwbGljaXQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7CisgICAgfk9yaWdpblN0b3JhZ2VNYW5hZ2Vy
KCk7CisKKyAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9
CisgICAgdm9pZCBwZXJzaXN0KCk7CisKK3ByaXZhdGU6CisgICAgZW51bSBjbGFzcyBTdG9yYWdl
QnVja2V0TW9kZSA6IGJvb2w7CisgICAgY2xhc3MgU3RvcmFnZUJ1Y2tldDsKKworICAgIHN0ZDo6
dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1bHRCdWNrZXQ7CisgICAgU3RyaW5nIG1f
cGF0aDsKKyAgICBib29sIG1fcGVyc2lzdGVkIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNw
YWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21l
c3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRl
eCBlNWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJiMTViLi4zZjkzNmQyNTI5MDJl
NTI0NzhlYjgxMTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJr
aXQvbWVzc2FnZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3Rf
YmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtPYnNlcnZlcklEJywKICAgICAg
ICAgJ1dlYktpdDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3InLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlzdGVuZXJJZGVudGlmaWVyJywK
ICAgICAgICAgJ1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktp
dDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IDkzZGJhNmNk
OTYwYjA4OTFiMmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJlOGZmZWVjNmM4Yjk1Y2ZkMTM5
YTBmMGZhZjBjOTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1LDYgKzExNSw5IEBAIE5ldHdv
cmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9yZS5jcHAgQG5vLXVuaWZ5CiBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgQG5v
LXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdl
ci5jcHAKIApAQCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3MvVXNlckNvbnRlbnQvV2ViVXNl
ckNvbnRlbnRDb250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9XZWJB
dXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9u
L1dlYkF1dGhuUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFmNzZiMzg5NGU5MTdjNTI3YzRm
OTM4ZmVlZDg2M2M3NzAxYzY5Li5kMTIwZTRhYzU0ZWNlODA4NTY1MmIxYTljNTBlMDVjMWFjMzZi
ZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTMsNyArMyw3IEBACiAJYXJjaGl2ZVZlcnNpb24gPSAxOwogCWNsYXNzZXMgPSB7CiAJ
fTsKLQlvYmplY3RWZXJzaW9uID0gNTI7CisJb2JqZWN0VmVyc2lvbiA9IDU0OwogCW9iamVjdHMg
PSB7CiAKIC8qIEJlZ2luIFBCWEFnZ3JlZ2F0ZVRhcmdldCBzZWN0aW9uICovCkBAIC0xNDY5LDYg
KzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1REUwMjZFNUJDRkQwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQxMzAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMzQzI5MDBGRERGNUYgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3Iu
aCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9u
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxl
ci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rp
b25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzIzNjExRTFC
MDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIzNjExRDFCMDE1REE4MDBGQTky
MzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUsNiArMTQ4OCw3IEBACiAJCTkzNTZGMkRG
MjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERGMjE1MUFERjQwMDdGNDU1RiAv
KiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYyRTAyMTUyQjc1MjAwRTZENURG
IC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIxNTFBREYzMDA3RjQ1NUYgLyog
V2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsgfTsKIAkJOTM1NkYyRTEyMTUy
Qjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRFMTIxNTFBREY0MDA3RjQ1NUYg
LyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJOTM1QjU3OUEyNkY1MTkzMzAw
OEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhB
QyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi87IH07CiAJCTkzNUVFQjlC
MTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk4MTI3NzYxNkQw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVFRUI5RjEyNzc2MUFDMDAzMzIy
QjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRs
ZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAvKiBTdG9yYWdlTWFuYWdlclNl
dE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyogU3RvcmFnZU1hbmFnZXJTZXRN
ZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkwNCw2ICs0OTA4LDE0IEBACiAJCTkzMDg1
RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlUmVjZWl2
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3Nh
Z2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFu
YWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMDg1RENFMjZF
MkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVz
c2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUwMjZG
MDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTMyNkYw
NkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRDRCAvKiBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUExQkUwMjZG
ODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0lt
bWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0
aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODkx
QTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMwLDggQEAKIAkJOTM0MjU4OEYyNTU1RENB
NTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxp
dGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25V
dGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0QjcyNDMxOUY1QjlC
RTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRM
aXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTYxMjc3NjE2RDAw
MzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3
YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV0tC
dW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURDMjI2RTFCQjY1MDAwRUM2QTcgLyogc3Rv
cmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJOTMx
QTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLywKKwkJ
CQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3Bw
ICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMg
LyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8sCisJCQkJOTM1QjU3OTgy
NkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLywK
KwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
LmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5l
dHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3MjZFMUM2RUUwMDBFQzZBNyAv
KiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8sCkBAIC0xMDAwNiw2ICsxMDAy
OCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8qIGNvY29hICovLAogCQkJCTJE
MjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJQkMxMTFBREUxMTJGNUI5QTAw
MzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAqLywKIAkJCQkxQTcyODQ0NDE5
NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAgKi8sCiAJCQkJMUE3
Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uaCAqLywKIAkJ
CQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNw
cCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJCQkJMUFBNTc1RkIxNDk2QjUyNjAwQTRF
RTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTcyRUJCRDcyNTM3
RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JUQVBJLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlkb1NlcnZpY2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2RjMzQzI5MDBGRERGNUYgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzNUI1NzlBMjZG
NTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYxQTE4RTI1QUUxMDBDRTFGODgg
LyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5MEMxRjQxMjY0RkQ3MTAwM0U0
NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlDNTlDNEE1OTE4Qjgx
MTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbi5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uM2I2ZTYzMWVhNmYyMmE4N2VlYWFmYmEwZTE2ZTZlYmIxODM3YmRiNwotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5
LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlv
bk9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oPgorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OmNyZWF0ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkoaWRlbnRpZmllciwgY29u
bmVjdGlvbikpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisgICAgOiBtX2lkZW50aWZpZXIo
aWRlbnRpZmllcikKKyAgICAsIG1fY29ubmVjdGlvbihtYWtlUmVmUHRyKGNvbm5lY3Rpb24pKQor
eworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9z
ZWQoKQoreworICAgIG1fY29ubmVjdGlvbiA9IG51bGxwdHI7Cit9CisKK3ZvaWQgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhh
bmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6
OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlkZW50
aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50
aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBp
ZiAobV9pZGVudGlmaWVyLnRvVUludDY0KCkgPT0gKmlkZW50aWZpZXIpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OklzU2FtZUVudHJ5KG1f
aWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIocmVzdWx0KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25u
ZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RmlsZUhhbmRsZShtX2lkZW50
aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBt
YWtlUmVmKCp0aGlzKSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUo
ZXJyb3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpV
bmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBo
YW5kbGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxlSWRlbnRp
Zmllci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShXVEZNb3ZlKG5hbWUpLCBXVEZN
b3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8
V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgVW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBp
cyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3Nh
Z2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldERpcmVjdG9yeUhhbmRsZShtX2lkZW50aWZp
ZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtl
UmVmKCp0aGlzKSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAg
ICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJy
b3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtu
b3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBoYW5k
bGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxlSWRlbnRpZmll
ci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2Vi
Q29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUobmFtZSksIFdU
Rk1vdmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OnJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZl
bHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9pZD4mJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpV
bmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9u
LT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVt
b3ZlRW50cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSksIFtjb21wbGV0
aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlbW92ZWQsIGF1
dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlbW92ZWQpCisgICAgICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhj
ZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsK
KyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZl
KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
Q29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVj
dGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdl
SGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nvbm5lY3Rp
b24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpS
ZXNvbHZlKG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVy
ID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcGF0aCwgYXV0byBlcnJvcikgbXV0
YWJsZSB7CisgICAgICAgIGlmICghcGF0aCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9y
KSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHBhdGgudmFsdWUoKSkp
OworICAgIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQwYjMyMTRhNGM2NjlhMjA5
MGYwM2VmYjY5MTg2NTFmNWIxNDM5NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgK
QEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAi
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9G
aWxlU3lzdGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENvbm5lY3Rp
b247Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBF
eGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFzcyBGaWxl
U3lzdGVtRmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6RmlsZVN5c3Rl
bUhhbmRsZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBD
OjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3ByaXZhdGU6
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3RlbUhhbmRs
ZUltcGwKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmll
cigpIHsgcmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBpc1NhbWVF
bnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29y
ZTo6RXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RmlsZUhhbmRs
ZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhh
bmRsZT4+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcm
JiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNl
cHRpb25Pcjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1I
YW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxW
ZWN0b3I8U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQdHI8SVBDOjpDb25uZWN0aW9uPiBt
X2Nvbm5lY3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFn
ZUNvbm5lY3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMyMWM0MzNkYjU3ZDkxMTczZTcwNDY4
N2U0MWEuLjA4YjZmMzNjYzhjMDY0YWQ1NDU4NjhmZGM1ZWE0ODczOGMyMmU0ZjIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29u
bmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0aW9uLmgiCiAKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIK
ICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC00OCw2ICs0OSwyMSBAQCB2b2lkIFdlYlN0b3Jh
Z2VDb25uZWN0aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29t
cGxldGlvbkhhbgogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdChvcmlnaW4pLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1H
ZXREaXJlY3RvcnkoQ2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKKyAg
ICBjb25uZWN0aW9uLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KG9yaWdpbiksIFt3ZWFrQ29ubmVjdGlvbiA9
IG1ha2VXZWFrUHRyKGNvbm5lY3Rpb24pLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpXShhdXRvIGlkZW50aWZpZXIsIGF1dG8gZXJyb3IpIG11dGFibGUgewor
ICAgICAgICBpZiAoIWlkZW50aWZpZXIpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoRXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAg
ICAgICAgaWYgKCF3ZWFrQ29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihFeGNlcHRpb24geyBVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3Mg
fSk7CisKKyAgICAgICAgYXV0byBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
Y3JlYXRlKCppZGVudGlmaWVyLCAqd2Vha0Nvbm5lY3Rpb24pOworICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKHsgfSwgV1RG
TW92ZShpbXBsKSkpOworICAgIH0pOworfQorCiBJUEM6OkNvbm5lY3Rpb24mIFdlYlN0b3JhZ2VD
b25uZWN0aW9uOjpjb25uZWN0aW9uKCkKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3Jh
Z2VDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViU3RvcmFnZUNvbm5lY3Rpb24uaAppbmRleCAxYzBlNjYzNjliNTZlZGI3MGU5M2E4ODllMzI1
MDM1NjY2OTMzNmU1Li40Nzc0YTdiMDRiMWNjZDgwZjIxNDk5ODI2ZDU0Nzc0NjAzYzcxNjNmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3Rv
cmFnZUNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaApAQCAtMzEsNiArMzEsMTEgQEAgbmFtZXNwYWNl
IElQQyB7CiBjbGFzcyBDb25uZWN0aW9uOwogfQogCituYW1lc3BhY2UgV2ViQ29yZSB7Cit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViU3RvcmFnZUNv
bm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFnZUNvbm5lY3Rpb24gewpAQCAt
NDAsNiArNDUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZvaWQgcGVyc2lzdGVkKFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5h
bDsKICAgICB2b2lkIHBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVj
dG9yeShXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+
JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigpOwogfTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMyNWQwMzEwNTgyLi5mNzkzYTAz
MDliZDIyNWFlYjM5MDQ4NGNiNzlhNjhjN2FmZWE0ZjNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMjEtMDktMjAgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAg
QWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHN0
b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3Rvcnkt
aGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0yMCAgQXl1bWkgS29qaW1hICA8
YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjgxMTAyPyk6
IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1sIGlzIGEgZmxha3kgdGltZW91
dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0MzdhNWUxNDdkN2RkYTQwZDFi
ZTliY2M3MTA5YTI2ODA1YWUyYWMuLmUwMDJkMWIzZmJkMzJmNTE4MGU1YjdhMTMxZTU1NWQ1MmE5
NGVhOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisy
MDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFk
ZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVs
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5k
b3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3Mt
aGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNv
bT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2VhOWU0N2MuLmU0YjNkY2E0MjU1
ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjAw
LDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9zLyBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBTa2lwIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lwIF0KIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFNraXAgXQorc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2YWN5LXJlcG9ydCB0ZXN0cyBy
ZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAtcHJpdmFjeS1yZXBvcnQvIFsg
U2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0YmI0MDA5Ni4uMWI0ZGM4YjZk
YTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVl
LW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsyLDUgQEAKIFBBU1Mgc2hvd0Rp
cmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgog
UEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRh
IFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIGlmcmFtZS4g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6
IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9O
OiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBz
aG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdp
bmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVK
RUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVj
dG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitGQUlMIG5hdmlnYXRvci5zdG9y
YWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3Qg
aW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRl
eGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0YjdiZTRkY2RhYWQ0YWI5MzA3
OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1NGY4MmYzNmVhMTMzN2UwYjAy
YTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5k
ZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDcg
KzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBw
ZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9u
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGVzIGFu
ZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRl
eGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBwZW5kaW5nIHRy
YW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRs
ZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxvYnMgaW4gSW5kZXhl
ZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJ
bmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVmY2M4ZDZiMjE5MzQzMmJhMGNj
ZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBiYTJjYjhkMzM1YzYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEw
IEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3RvcnkgaGFuZGxlcyBy
ZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFu
ZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJldHVybnMg
dHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUg
c2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVu
dHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2Ft
ZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRp
Y2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJu
cyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZv
ciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxlIGhhbmRs
ZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0
aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJl
dHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRy
eSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBl
M2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0Li4zOTVlY2E1NTRiZGQ3Yjhh
YjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJh
bWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMwZmI2Y2IyNjViODQzYjJiMGNl
ZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGExMmRlYTZjNDgyODgxNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5k
IG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2Vz
IHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRh
IFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwg
dG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYSB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBv
cmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8g
c2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBv
cnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwg
dG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBp
biBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNl
bmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5MGUyM2M0OTFmNTg4ZDFiNWI2
ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1Y2UxMTFkOWZjMmY3MDZhMGJi
YzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3Nh
Z2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBz
YW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZy
YW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3Jp
Z2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4
IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3YjUuLmE5Mzg0N2QwMDM1YjNi
ZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA0NTEwNjVlMzIyZGFm
ZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdmNGFmZmExOWMzODhlZTFjYzhk
MDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEs
NSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGVkaWNh
dGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2VydmljZSB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1ZDkzZWU1NzIxNTc5YmI5ZWZj
NTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3NDZkNGNlYjI5NGQ2NzBhN2Q1
YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5k
Ym94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2lu
ZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYwOTU5OTU4OTYzZjJmNGQ2YTk3
ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3ODFlZmM5N2IxZDBmZGM4ZmIx
ZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
YmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdv
cmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3MmZmM2Y1NzQxMmRkMDhlYzZh
NGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkwNGZkNjdiOTkxMWY3MDcwNmFk
OWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBz
ZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNhMGY5NDcxMGM4ZTNlMDVmOTVh
MDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNkMjZmMzkxN2UwNzY4NDBlNzFj
ZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJl
bW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDkg
QEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNo
b3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgp
IHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVjdG9yeSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBv
biBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hv
dWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUgb3B0
aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZSgpIHRvIHJl
bW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBv
biBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJl
bW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVj
dXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhlIHJlY3Vy
c2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5k
bGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1ODgyMzAuLjc4MTcxZmYwZTQ4
NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsx
LDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBm
b3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0
eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
Y3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRo
IGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZh
bHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3Jl
YXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZv
ciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkg
cmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEgZmlsZSBh
bHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBu
YW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxl
KCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRE
aXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0
aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhh
bmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0ZGM3MzkxYjA4M2ZkMDRhYmI4
MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2ExYzg2ZmE2N2E2ZmQ0Y2U4N2Y1
NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4g
ZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0
aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVI
YW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3Jl
YXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNh
bWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFu
ZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRo
IGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
Z2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxl
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRl
PXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhv
dXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUg
c2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRs
ZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNl
cGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Ig
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlv
bi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYxYzExMmRiOTlhNjk2YzAzZmI0
YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4MTIyOWQ3MmVlMDMwNmE0YzUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBk
b2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEBAYXN5
bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlv
biB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpdGVyYXRpb24g
d2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9l
c24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEBAYXN5bmNJdGVy
YXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdh
cmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggYWM2ZmMx
OTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgxNDcyMjViZGE4NDkyOGRjMzI2
NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKLUZBSUwgcmVtb3ZlRW50
cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB0byBy
ZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24g
YSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBlbXB0
eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5
KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkg
cmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1lbXB0eSBkaXJl
Y3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1v
dmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1
Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBiMWIzMzQwLi5mNWU2NTFiMWVm
MWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFJlc29sdmUg
cmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBw
YXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3QgYSBjaGls
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBSZXNvbHZlIHJldHVybnMg
ZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24tYXNj
aWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUg
cmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVI
YW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRl
bnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRw
cy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAzMzAxMGQ3MTg0NTIyYmIzNzA1
ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5MjNjNDQzOTdmNjQxYzY1ZGNh
ZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUt
Y3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2
ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmls
ZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMu
dGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQXR0
ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxl
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEwNGYxNWM3YWZhZGExYzE5N2E2
YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2MWE1NzggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdl
dEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCBnZXRG
aWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRp
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgZ2V0RmlsZSgpIHByb3Zp
ZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRpbWUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1OWU2ZGJlMGIwYzhlMmM2MGJh
Li5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZmZWUwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVG
aWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAK
IAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBBcnJheUJ1ZmZlciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0
aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBp
cGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21tYW5kIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0g
b2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBh
IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0
byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Y2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21t
YW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdp
dGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1MTU3YTVkYWNlZmMxMzVmYzA2
NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4NzlhNTRiNjY2NDhlOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdy
aXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMxICsx
LDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIHN0cmluZyB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8g
b2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2Fs
bGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0cmluZyBh
cHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3Jp
dGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBzdHJpbmcgYW5k
IGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBi
ZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRo
IHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdp
dGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJl
Y3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBh
dG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBhdG9taWMgY2hhbmdlcyBv
biBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZh
aWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6
IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkg
c3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBldmVuIGlm
IGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRh
dGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQYXJh
bXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB3
cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3
aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3Np
dGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBz
dHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQg
YmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBz
dHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBz
dHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHdpbmRvd3MgbGluZSBl
bmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdHlwZWQgYXJyYXkg
YnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczog
Y2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
YXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVy
YXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9t
aWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBl
dmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRhdGEgcGFy
YW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogc2VlayBt
aXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3VsZCByZWpl
Y3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2JkNjRjODQxOTU1OTI0NTIxMmYy
ZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2YwZGEzODk0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxl
U3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCB0
cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3aGVuIHBhcmVudCBk
aXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3JpdGFi
bGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGlu
Z0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3
aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjb21tYW5kcyBhcmUgcXVl
dWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKCkgZmFp
bHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1v
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3
aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6IGF0b21p
YyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250ZW50cyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhp
c3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6
ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwgc3Ry
ZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2ZjZTQ2Li5kOGRjZWJlNDg3MTAy
MzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1bGxzY3JlZW4vZnVsbC1zY3Jl
ZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMyMTMwOWJhZmYwNWU5NDk0MTFi
ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAK
K1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgcm9vdEhh
bmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBpcyAiZGlyZWN0b3J5IgorUEFT
UyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5kbGUua2luZCBpcyAiZGlyZWN0
b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBmaWxlSGFuZGxlLm5hbWUgaXMg
ImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIKK1BBU1MgaGFuZGxlTmFtZXMu
bGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRpciIKK1BBU1MgaGFuZGxlTmFt
ZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3RyaW5nKCkgaXMgIk5vdEZvdW5k
RXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRt
bCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxl
LWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4NTE0ZjQzNzYzNGVmZDRlMzBh
OGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApAQCAtMCwwICsxLDEwMCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rl
c2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFuZGxlLCBkaXJIYW5kbGUsIGZp
bGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3JlYXRlRXJyb3I7CisKK2Z1bmN0
aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9yKSB7CisgICAgICAgIHRlc3RG
YWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKworZnVuY3Rpb24g
Z2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpLnRo
ZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0gaGFuZGxlOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIsICIiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAg
ICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJy
b3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0
aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7CisgICAgZnJvbUhhbmRsZS5n
ZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0cnVlIH0pLnRoZW4oKGhhbmRs
ZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAgICAgIGNoZWNr
SWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9u
IGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sKKyAgICBoYW5kbGUxLmlzU2Ft
ZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICBpc1NhbWVFbnRyeSA9
IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1lRW50cnkiKTsKKyAgICAgICAg
Y3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24g
Y3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsKKyAgICBsZXQgb3B0aW9ucyA9
IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxlLmdldEZpbGVIYW5kbGUoImZp
bGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgZmlsZUhhbmRsZSA9IGhh
bmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLm5hbWUiLCAi
ZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUua2luZCIs
ICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9
PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGNyZWF0ZUVycm9yID0g
ZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3JlYXRlRXJyb3IudG9TdHJp
bmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4i
KTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZXNvbHZl
UGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhhbmRsZSkudGhlbigocmVzdWx0
KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZSgi
aGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJlbW92ZUVudHJ5KGRpckhhbmRs
ZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVz
dChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92ZUVudHJ5KGZyb21IYW5kbGUs
IG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5hbWUpLnRoZW4oKHJlc3VsdCkg
PT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyByZW1vdmVkLgorICAgICAgICBj
cmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgZ2V0RGlyZWN0
b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRvdy50ZXN0UnVubmVyIGlzIG5v
dCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="commit-queue"
          id="462228"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438750</attachid>
            <date>2021-09-20 16:28:31 -0700</date>
            <delta_ts>2021-09-20 18:16:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920162829.patch</filename>
            <type>text/plain</type>
            <size>186158</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi4w
ZTU3NzI4NWQwODE0ZDJkNTk5OTRhYzkyYTYzMjQzMjJjZTY1ZTAzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgxIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9k
ZWNsYXJlZCk6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAo
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRl
U2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAy
ZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAg
ICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBN
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVs
ZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEy
ZTEuLmRiYjA4YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
IAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9t
aXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01h
bGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5n
JiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBs
PiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAK
LUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRs
ZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQog
Ci12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3Ry
aW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVI
YW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpHZXRGaWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0
ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAg
ICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9
KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRp
b25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90
U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBs
KCkuZ2V0RGlyZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBb
cHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAg
ICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNl
LnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJl
c29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpyZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZl
cnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsg
Tm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAg
ICBpbXBsKCkucmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtw
cm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAg
ICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2Up
Cit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRs
ZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4m
JiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRl
ZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRs
ZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAg
IHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43
YzQ3ZTc1NWVjMGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAg
V1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1Ymxp
YzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1Ymxp
YzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0
aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAg
dm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRG
aWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZp
bGVIYW5kbGU+PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcm
IG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZv
aWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9w
dGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNv
bnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURM
VVNWU3RyaW5nPj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9u
YWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5n
JiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlv
bnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lz
dGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUx
MzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2Vh
MjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYg
KzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJK
U0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+
CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQor
UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0
cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lz
dGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVI
YW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVt
SGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vz
cy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlk
YzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3Mg
RmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0
ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5k
bGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmls
ZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwog
ICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYm
KTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkg
eyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRs
ZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3
NDQ4Y2ZlNWE2MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01B
S0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFu
ZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5n
JiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhh
bmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkp
CisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFu
ZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVt
SGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0
ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRs
ZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9t
aXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1w
bCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5
YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1
OTRhMDU4MzQyZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNz
IFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBw
dWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FM
TE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lz
dGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAg
RmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0
ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBt
X2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7
IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQo
KTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9N
UHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmls
ZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJv
dGVjdGVkOgotICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRs
ZUltcGw+JiYpOwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9Owog
ICAgIFN0cmluZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5k
ZXggMjA4ZTc0NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYz
YzVjODc3ZGU2ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApA
QCAtMjksNiArMjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAg
ICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVu
YWJsZWRCeVNldHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtSGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1
NDcwNTA4YWY3ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDog
cHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRp
b25hbDx1aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBn
ZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4m
Jik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIz
MWY5NGI2NmFmMDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFh
YTU0NjExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15
U3RvcmFnZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAg
IHsKICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOwor
ICAgICAgICB9CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVj
dGlvbigpIGZpbmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
U3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9y
YWdlQ29ubmVjdGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhj
NzU1MzMuLjY2ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBA
IC0yNSwxMSArMjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47
CiAKIGNsYXNzIFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNv
bm5lY3Rpb24+IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3Jh
Z2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xp
ZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFn
ZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMw
OWUuLjdjMTY4OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcs
OCArMjcsMTAgQEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xp
ZW50T3JpZ2luLmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZp
Z2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYv
SXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3Rv
cmFnZU1hbmFnZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBw
cm9taXNlKQorc3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3Rv
cmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307
CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1h
bmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJO
YXZpZ2F0b3IgZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAg
ICAgYXV0byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsK
ICAgICBpZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRp
b24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Cisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMg
aW52YWxpZCJfcyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKKyAgICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNv
bm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVj
dGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlk
Il9zIH07CiAKLSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwot
ICAgIGlmICghb3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1
cm4gQ29ubmVjdGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5k
YXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAg
YXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBp
ZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2Vw
dGlvbigpKTsKIAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50
b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShw
cm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbklu
Zm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAg
IHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5l
Y3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJz
aXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAg
ICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZv
T3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09y
RXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
Y29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0
byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBp
ZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBh
dXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICgh
Y29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IElu
dmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rp
b24tPnBlcnNpc3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgp
IH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
eworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJl
bGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9u
LnBlcnNpc3QoV1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1v
dmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5y
ZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFj
ZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1l
bnRlZCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0
aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJu
IGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3Zl
KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0
byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9u
KCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVl
KCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFk
YTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3
MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNl
OwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0
aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFn
ZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsK
QEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3Jh
Z2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsK
KyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBX
ZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgz
NWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4
OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRh
YmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9q
cy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5j
cHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIz
ZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYw
ZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBF
Qjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1ND
b25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQy
NTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNB
MjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAv
KiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYg
LyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgx
RjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5
NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAw
RkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1h
Z2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAw
MzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4
LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87
IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0
ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nl
c3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMy
QzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1
M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1
ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3
RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlG
MTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2du
aXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFs
dGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQw
QzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2
RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2
RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVk
T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlh
Q2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JE
MDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZC
MUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYz
QjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1
QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywK
KwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9t
LmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVj
dGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRN
TENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkw
RiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcg
QEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Ki8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAq
LywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwg
Ki8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0Zp
bGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBT
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICsz
MjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxl
RW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVD
NDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJC
QUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4
NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNp
bmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVl
IHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAg
IHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsK
K30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCos
IEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYm
IGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxl
LmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNy
ZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSho
YW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2
ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVk
MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNj
cmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlw
dEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4
IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5
MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VX
b3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZjMzUyZTg0YjU0MjM5YmEyODZlNDYx
NGFmMzgyNzNmOTE2YWEyYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgKQEAgLTAsMCArMSw3MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRp
b25Db2RlLmg+CisjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3QgeworICAg
IEVtcHR5LAorICAgIEZpbGVOb3RGb3VuZCwKKyAgICBJbnZhbGlkTmFtZSwKKyAgICBJbnZhbGlk
TW9kaWZpY2F0aW9uLAorICAgIFR5cGVNaXNtYXRjaCwKKyAgICBVbmtub3duCit9OworCitpbmxp
bmUgV2ViQ29yZTo6RXhjZXB0aW9uQ29kZSBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IgZXJyb3IpCit7CisgICAgc3dpdGNoIChlcnJvcikgeworICAgIGNhc2Ug
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kOgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6Tm90Rm91bmRFcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb246CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpJbnZhbGlkTW9kaWZpY2F0aW9uRXJyb3I7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2g6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpUeXBlRXJyb3I7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJu
IFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlVua25vd25FcnJvcjsKKyAgICB9Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHsKKyAgICB1c2luZyB2
YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHksCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWROYW1lLAorICAgICAgICBX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb24sCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24KKyAgICA+OworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hMzE0NGU5OWJhMjQyNWM1ODMzZmQ1MzRhNGFjMjlmYzcwYzViOGM0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmNwcApAQCAtMCwwICsxLDEzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIgorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworI2lmIE9TKFdJTkRPV1MpCitj
b25zdGV4cHIgY2hhciBwYXRoU2VwYXJhdG9yID0gJ1xcJzsKKyNlbHNlCitjb25zdGV4cHIgY2hh
ciBwYXRoU2VwYXJhdG9yID0gJy8nOworI2VuZGlmCisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIG1hbmFn
ZXIsIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIG5hbWUpCisg
ICAgOiBtX2lkZW50aWZpZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyOjpnZW5l
cmF0ZSgpKQorICAgICwgbV9tYW5hZ2VyKG1ha2VXZWFrUHRyKG1hbmFnZXIpKQorICAgICwgbV90
eXBlKHR5cGUpCisgICAgLCBtX3BhdGgocGF0aCkKKyAgICAsIG1fbmFtZShuYW1lKQoreworICAg
IEFTU0VSVCghbV9wYXRoLmlzRW1wdHkoKSk7CisKKyAgICBzd2l0Y2ggKG1fdHlwZSkgeworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeToKKyAgICAgICAg
RmlsZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKG1fcGF0aCk7CisgICAgICAgIHJldHVybjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxlOgorICAgICAgICBp
ZiAoRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhtX3BhdGgpKQorICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW06Om9wZW5GaWxlKG1fcGF0aCwgRmlsZVN5
c3RlbTo6RmlsZU9wZW5Nb2RlOjpXcml0ZSk7CisgICAgICAgIEZpbGVTeXN0ZW06OmNsb3NlRmls
ZShoYW5kbGUpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNT
YW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOworICAgIGlmIChwYXRo
LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKG1fcGF0aCA9PSBwYXRoKTsKK30KKwordm9pZCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAg
aWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgLy8gaHR0cHM6
Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3ZhbGlkLWZpbGUtbmFtZQorICAg
IGlmIChuYW1lID09ICIuIiB8fCBuYW1lID09ICIuLiIgfHwgbmFtZS5jb250YWlucyhwYXRoU2Vw
YXJhdG9yKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0g
RmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAg
bV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgdHlwZSwgcGF0aCwgbmFtZSwgY3Jl
YXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OlR5cGU6OkZpbGUsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6Omdl
dERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChz
dGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVx
dWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5LCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRy
eShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRpcmVjdG9yeSkKKyAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5
QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5
c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBlKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3Vu
ZCk7CisKKyAgICBzd2l0Y2ggKHR5cGUudmFsdWUoKSkgeworICAgIGNhc2UgRmlsZVN5c3RlbTo6
RmlsZVR5cGU6OlJlZ3VsYXI6CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxl
U3lzdGVtOjpkZWxldGVGaWxlKHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAo
IWRlbGV0ZVJlY3Vyc2l2ZWx5KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KEZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lz
dGVtOjpkZWxldGVOb25FbXB0eURpcmVjdG9yeShwYXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6RW1wdHkpOworICAgIGRlZmF1bHQ6CisgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgfQorfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1f
bWFuYWdlcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBhdXRvIHBhdGggPSBtX21h
bmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0sIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKworICAgIGF1dG8gcmVzdFBhdGggPSBwYXRo
LnN1YnN0cmluZyhtX3BhdGgubGVuZ3RoKCkpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3RQ
YXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42OWJmYzk3OGQwYjc1M2NmYzk3MzQ5OTJlNzFkZjc3MGNlNGUyYjhlCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2Vu
dW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4geworICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3MgVHlwZSA6IGJv
b2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZSk7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIGNvbnN0IFN0cmlu
ZyYgcGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorCisgICAgdm9pZCBpc1NhbWVFbnRy
eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIGdldERpcmVj
dG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZl
Y3RvcjxTdHJpbmc+PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgor
ICAgIHZvaWQgcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyPiBtX21hbmFnZXI7CisgICAgVHlwZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fcGF0aDsK
KyAgICBTdHJpbmcgbV9uYW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjQyNzE3
ZTcxZGQ4OWFhNjQxMjYyZThjNTE0OTIzMDVlZGQzYTIzOAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworZW51bSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlIHsgfTsKK3Vz
aW5nIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjNlMjM5YjdjNGVlMzAyMmMwYTdkOTU3NTZlMmZkZDU0YTA2MzQ1NTUKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCkgPSBkZWZhdWx0
OworCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxl
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghbV9oYW5kbGVzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKTsKKworICAgIG1faGFuZGxlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQ
dHIoaGFuZGxlKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
dW5yZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllcikKK3sKKyAgICBBU1NFUlQobV9oYW5kbGVzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKwor
ICAgIG1faGFuZGxlcy5yZW1vdmUoaWRlbnRpZmllcik7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgaWYgKGF1dG8g
aGFuZGxlID0gbV9oYW5kbGVzLmdldChpZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIGhhbmRs
ZS5nZXQoKTsKKworICAgIHJldHVybiBudWxscHRyOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjZjYzQzYzNhZmY2YzExY2VmMTNiYzNjYzdmMGYyODgwMjMyNTA3YgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsKKworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSB7CisgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitwdWJsaWM6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSgp
OworICAgIHZvaWQgcmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSYpOworICAgIHZvaWQgdW5yZWdpc3RlckhhbmRs
ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAgIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlKiBnZXRIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsK
KworcHJpdmF0ZToKKyAgICBIYXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmUwMzRkYTUwYWJmZjFmMDlmNzJhNGUyNzA5ZGJmNWQ2YjE5MzBmMWYKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMCwwICsxLDk5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgor
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIo
U3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkp
CisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkp
Cit7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcigpCit7CisgICAgZm9yIChhdXRvIGlkZW50aWZpZXIgOiBtX2hhbmRsZXMua2V5cygpKQor
ICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaWRlbnRpZmllcik7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSB0eXBlLCBjb25zdCBT
dHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7
CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBhdGgpOwor
ICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6
OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmlsZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4
aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpmaWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYg
KCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAg
ICAgYXV0byBleGlzdGluZ0hhbmRsZVR5cGUgPSAoZXhpc3RpbmdGaWxlVHlwZS52YWx1ZSgpID09
IEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpSZWd1bGFyKSA/IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpUeXBlOjpGaWxlIDogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeTsK
KyAgICAgICAgaWYgKGV4aXN0aW5nSGFuZGxlVHlwZSAhPSB0eXBlKQorICAgICAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRsZSA9IG1ha2VVbmlx
dWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBwYXRoLCBuYW1lKTsKKyAg
ICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIgPSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAg
ICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5zdXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZd
IHsKKyAgICAgICAgbV9jb25uZWN0aW9ucy5hZGQoY29ubmVjdGlvbik7CisgICAgICAgIHJldHVy
biBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4geyB9OworICAgIH0p
Lml0ZXJhdG9yLT52YWx1ZS5hZGQobmV3SGFuZGxlSWRlbnRpZmllcik7CisgICAgbV9yZWdpc3Ry
eS5yZWdpc3RlckhhbmRsZShuZXdIYW5kbGVJZGVudGlmaWVyLCAqbmV3SGFuZGxlKTsKKyAgICBt
X2hhbmRsZXMuYWRkKG5ld0hhbmRsZUlkZW50aWZpZXIsIFdURk1vdmUobmV3SGFuZGxlKSk7Cisg
ICAgY29tcGxldGlvbkhhbmRsZXIobmV3SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RW1wdHkpOworfQorCitjb25zdCBTdHJpbmcmIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjo6Z2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
cikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy5maW5kKGlkZW50aWZpZXIpOworICAg
IHJldHVybiBoYW5kbGUgPT0gbV9oYW5kbGVzLmVuZCgpID8gZW1wdHlTdHJpbmcoKSA6IGhhbmRs
ZS0+dmFsdWUtPnBhdGgoKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIGlmIChh
dXRvIGhhbmRsZXMgPSBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZmluZChjb25uZWN0aW9uLnVuaXF1
ZUlEKCkpOyBoYW5kbGVzICE9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQoKSkgeworICAgICAg
ICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVlKSB7CisgICAgICAg
ICAgICBtX2hhbmRsZXMucmVtb3ZlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgYXV0
byBoYW5kbGUgPSBtX2hhbmRsZXMudGFrZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgICAg
IG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAg
fQorICAgICAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24ucmVtb3ZlKGhhbmRsZXMpOworICAgICAg
ICBtX2Nvbm5lY3Rpb25zLnJlbW92ZShjb25uZWN0aW9uKTsKKyAgICB9Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgY3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3RvcnksIG1fcGF0aCwgZW1wdHlTdHJpbmcoKSwgdHJ1
ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xN2QxYjllMmQyNzcy
NjgxMTQyMTg2MmViYjcxODIwNzk5NDY3MjUyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBA
IC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
K3B1YmxpYzoKKyAgICBleHBsaWNpdCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYg
cGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoKTsKKworICAgIHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlv
biYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNv
bnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4s
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICBjb25zdCBTdHJpbmcmIGdldFBhdGgo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25D
bG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnkoSVBDOjpDb25u
ZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKwor
cHJpdmF0ZToKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkmIG1fcmVnaXN0cnk7CisgICAgV2Vha0hhc2hTZXQ8SVBDOjpDb25uZWN0aW9uPiBt
X2Nvbm5lY3Rpb25zOworICAgIEhhc2hNYXA8SVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCwgSGFz
aFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+PiBtX2hhbmRsZXNCeUNvbm5l
Y3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCAz
NjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMzM2M3Li40YmMyYjA0MmJjNzlkMzlh
NzdlMGQzZTY1N2YzN2RkMTM5YTc3MTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcApA
QCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk5ldHdvcmtT
dG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUg
Ik5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0NyeXB0b0RpZ2VzdC5oPgpAQCAtNDEs
NiArNDMsNyBAQCBSZWY8TmV0d29ya1N0b3JhZ2VNYW5hZ2VyPiBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSQogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBT
dHJpbmcmIHBhdGgpCiAgICAgOiBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiAgICAgLCBtX3F1ZXVl
KFdvcmtRdWV1ZTo6Y3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0LlN0b3JhZ2UiKSkKKyAgICAsIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeShtYWtlVW5pcXVlUmVmPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnk+KCkpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKIApAQCAtNTMsNiArNTYsOCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwog
fQogCitOZXR3b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKSA9IGRl
ZmF1bHQ7CisKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdGFydFJlY2VpdmluZ01lc3Nh
Z2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTY1LDYgKzcwLDEwIEBAIHZvaWQgTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29u
bmVjdGlvbiYKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCiAgICAgY29ubmVjdGlv
bi5yZW1vdmVXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKTsKKyAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwcm90ZWN0ZWRDb25uZWN0aW9u
ID0gbWFrZVJlZihjb25uZWN0aW9uKV0oKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3Rv
cmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAg
ICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVk
Q29ubmVjdGlvbi5nZXQoKSk7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNv
bnN0IFN0cmluZyYgc3RyaW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsNiArMTIw
LDU5IEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6
OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1
ZSk7CiB9CiAKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0
b3J5KElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIobV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmdldCgpKS5nZXREaXJlY3Rv
cnkoY29ubmVjdGlvbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0
YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBoYW5kbGUtPmlzU2Ft
ZUVudHJ5KHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0
aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+Z2V0RmlsZUhhbmRsZShjb25uZWN0aW9uLCBu
YW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQor
Cit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRs
ZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnko
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFu
ZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisg
ICAgaGFuZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVz
b2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7Cisg
ICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5y
ZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggZjZkYWVk
MTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUwYWQ4ZWY1MGExYjBhYzYzNzlk
OGI5OTA0YjUzM2QzNGY2YTNkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaApAQCAtMjYsNiAr
MjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklE
Lmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIG5hbWVzcGFjZSBX
ZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgSVBDOjpDb25u
ZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIGZpbmFsIDog
cHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdlcj4gY3JlYXRlKFBBTDo6U2Vz
c2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwogCkBAIC00OCwxNCArNTIsMjEgQEAgcHVibGlj
OgogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCwg
Y29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKCk7CiAgICAg
T3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAoaW1w
bGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3NhZ2UgSGFuZGxl
cnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAg
ICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShJ
UEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnko
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQg
Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZv
aWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNz
YXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7
CisgICAgdm9pZCByZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIs
IGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAg
ICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpv
cHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKIAog
ICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAgIFJlZjxXb3JrUXVldWU+IG1fcXVl
dWU7CkBAIC02Myw2ICs3NCw4IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3Nh
bHQ7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxP
cmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnM7CiAgICAg
SGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9y
YWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKworICAgIFVuaXF1
ZVJlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFn
ZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUwZThkZTg5OGZmMzk5
MjZjYjg2NDBlYTEwZjE3OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFhMDY0NTM4NTE3ZTBjNzhjNmM1
NGE0ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAt
MjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgewogICAg
IFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wg
cGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxlU3lzdGVtR2V0RGly
ZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAoc3RkOjpvcHRp
b25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmll
ciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5
bmMgV2FudHNDb25uZWN0aW9uCisgICAgSXNTYW1lRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4gKGJvb2wgcmVzdWx0KSBBc3lu
YworICAgIEdldEZpbGVIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+
IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
PiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
IGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5n
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4
X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5l
Y3Rpb24KKyAgICBSZW1vdmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkg
LT4gKGJvb2wgcmVtb3ZlZCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvciBlcnJvcikgQXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxT
dHJpbmc+PiBwYXRoLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9y
IGVycm9yKSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggNzVhMWFlZDI0
OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2NTE4MzhhMzEzOGM5M2JmNjli
YmU1NTZhY2Q0ZmVlY2UwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsy
Niw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNlIFdlYktpdCB7
CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXRNb2RlIDog
Ym9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwzNCBAQCBwdWJs
aWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewogICAgIH0KKwog
ICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7IH0KICAg
ICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUgPSBtb2RlOyB9
CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
KQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAg
ICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVj
dGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdlUGF0aChjb25zdCBTdHJpbmcm
IHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1fcm9vdFBh
dGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGlu
Z0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmllcik7CisgICAgfQorCisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgeworICAgICAgICBpZiAo
IW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4odHlwZVN0
b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKworICAgICAgICByZXR1cm4gKm1f
ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJpdmF0ZToKICAgICBTdHJpbmcg
bV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwogICAgIFN0b3JhZ2VCdWNrZXRN
b2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZmb3J0IH07CisgICAgc3RkOjp1
bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9maWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIo
U3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAogT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsKIAotdm9pZCBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0
aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICBpZiAobV9kZWZh
dWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRCdWNrZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29u
bmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0JiBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0
cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0QnVja2V0KQogICAgICAgICBtX2RlZmF1bHRC
dWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0aCwgImRlZmF1bHQiX3MpOwog
Ci0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0
ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30KKwordm9pZCBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAgbV9wZXJzaXN0ZWQgPSB0cnVlOworICAgIGRl
ZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30K
KworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lz
dHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVja2V0KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIu
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLmJj
NjJjZjQyMmY1YTM1ZGQyZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisKIGNs
YXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
IHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
KTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKTsKIAorICAgIHZvaWQgY29ubmVjdGlvbkNs
b3NlZChJUEM6OkNvbm5lY3Rpb24mKTsKICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcGVyc2lzdGVkOyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeSYpOwogCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tl
dE1vZGUgOiBib29sOwogICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tl
dCYgZGVmYXVsdEJ1Y2tldCgpOwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+
IG1fZGVmYXVsdEJ1Y2tldDsKICAgICBTdHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgub3Jp
ZyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5oLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWU0MjE1YjNjNzAwYmQ0OTlkMDZlM2I5MDRjMTRlZmQ2
NTI4OWYzMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcKQEAgLTAsMCArMSw1MSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdlciB7Cisg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgZXhwbGljaXQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7CisgICAgfk9yaWdpblN0b3JhZ2VNYW5hZ2Vy
KCk7CisKKyAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9
CisgICAgdm9pZCBwZXJzaXN0KCk7CisKK3ByaXZhdGU6CisgICAgZW51bSBjbGFzcyBTdG9yYWdl
QnVja2V0TW9kZSA6IGJvb2w7CisgICAgY2xhc3MgU3RvcmFnZUJ1Y2tldDsKKworICAgIHN0ZDo6
dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1bHRCdWNrZXQ7CisgICAgU3RyaW5nIG1f
cGF0aDsKKyAgICBib29sIG1fcGVyc2lzdGVkIHsgZmFsc2UgfTsKK307CisKK30gLy8gbmFtZXNw
YWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21l
c3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRl
eCBlNWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJiMTViLi4zZjkzNmQyNTI5MDJl
NTI0NzhlYjgxMTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJr
aXQvbWVzc2FnZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3Rf
YmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtPYnNlcnZlcklEJywKICAgICAg
ICAgJ1dlYktpdDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3InLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlzdGVuZXJJZGVudGlmaWVyJywK
ICAgICAgICAgJ1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktp
dDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IDkzZGJhNmNk
OTYwYjA4OTFiMmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJlOGZmZWVjNmM4Yjk1Y2ZkMTM5
YTBmMGZhZjBjOTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQK
KysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1LDYgKzExNSw5IEBAIE5ldHdv
cmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9yZS5jcHAgQG5vLXVuaWZ5CiBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgQG5v
LXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdl
ci5jcHAKIApAQCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3MvVXNlckNvbnRlbnQvV2ViVXNl
ckNvbnRlbnRDb250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9XZWJB
dXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9u
L1dlYkF1dGhuUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFmNzZiMzg5NGU5MTdjNTI3YzRm
OTM4ZmVlZDg2M2M3NzAxYzY5Li5kMTIwZTRhYzU0ZWNlODA4NTY1MmIxYTljNTBlMDVjMWFjMzZi
ZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTMsNyArMyw3IEBACiAJYXJjaGl2ZVZlcnNpb24gPSAxOwogCWNsYXNzZXMgPSB7CiAJ
fTsKLQlvYmplY3RWZXJzaW9uID0gNTI7CisJb2JqZWN0VmVyc2lvbiA9IDU0OwogCW9iamVjdHMg
PSB7CiAKIC8qIEJlZ2luIFBCWEFnZ3JlZ2F0ZVRhcmdldCBzZWN0aW9uICovCkBAIC0xNDY5LDYg
KzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1REUwMjZFNUJDRkQwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQxMzAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMzQzI5MDBGRERGNUYgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3Iu
aCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9u
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxl
ci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rp
b25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzIzNjExRTFC
MDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIzNjExRDFCMDE1REE4MDBGQTky
MzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUsNiArMTQ4OCw3IEBACiAJCTkzNTZGMkRG
MjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERGMjE1MUFERjQwMDdGNDU1RiAv
KiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYyRTAyMTUyQjc1MjAwRTZENURG
IC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIxNTFBREYzMDA3RjQ1NUYgLyog
V2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsgfTsKIAkJOTM1NkYyRTEyMTUy
Qjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRFMTIxNTFBREY0MDA3RjQ1NUYg
LyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJOTM1QjU3OUEyNkY1MTkzMzAw
OEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhB
QyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi87IH07CiAJCTkzNUVFQjlC
MTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk4MTI3NzYxNkQw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVFRUI5RjEyNzc2MUFDMDAzMzIy
QjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRs
ZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAvKiBTdG9yYWdlTWFuYWdlclNl
dE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyogU3RvcmFnZU1hbmFnZXJTZXRN
ZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkwNCw2ICs0OTA4LDE0IEBACiAJCTkzMDg1
RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlUmVjZWl2
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3Nh
Z2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFu
YWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMDg1RENFMjZF
MkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVz
c2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUwMjZG
MDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTMyNkYw
NkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRDRCAvKiBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUExQkUwMjZG
ODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0lt
bWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0
aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODkx
QTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMwLDggQEAKIAkJOTM0MjU4OEYyNTU1RENB
NTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxp
dGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25V
dGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0QjcyNDMxOUY1QjlC
RTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRM
aXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTYxMjc3NjE2RDAw
MzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3
YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV0tC
dW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURDMjI2RTFCQjY1MDAwRUM2QTcgLyogc3Rv
cmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJOTMx
QTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLywKKwkJ
CQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3Bw
ICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMg
LyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8sCisJCQkJOTM1QjU3OTgy
NkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLywK
KwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
LmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5l
dHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3MjZFMUM2RUUwMDBFQzZBNyAv
KiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8sCkBAIC0xMDAwNiw2ICsxMDAy
OCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8qIGNvY29hICovLAogCQkJCTJE
MjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJQkMxMTFBREUxMTJGNUI5QTAw
MzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAqLywKIAkJCQkxQTcyODQ0NDE5
NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5jcHAgKi8sCiAJCQkJMUE3
Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uaCAqLywKIAkJ
CQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNw
cCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJCQkJMUFBNTc1RkIxNDk2QjUyNjAwQTRF
RTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTcyRUJCRDcyNTM3
RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JUQVBJLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlkb1NlcnZpY2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2RjMzQzI5MDBGRERGNUYgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzNUI1NzlBMjZG
NTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYxQTE4RTI1QUUxMDBDRTFGODgg
LyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5MEMxRjQxMjY0RkQ3MTAwM0U0
NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlDNTlDNEE1OTE4Qjgx
MTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbi5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTk3ZWM4MmYyNzJlNTMwMWZmMGJjYjRhMmJjODliZjcxZjU4OWUyNwotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5
LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlv
bk9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oPgorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OmNyZWF0ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkoaWRlbnRpZmllciwgY29u
bmVjdGlvbikpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisgICAgOiBtX2lkZW50aWZpZXIo
aWRlbnRpZmllcikKKyAgICAsIG1fY29ubmVjdGlvbihtYWtlUmVmUHRyKGNvbm5lY3Rpb24pKQor
eworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9z
ZWQoKQoreworICAgIG1fY29ubmVjdGlvbiA9IG51bGxwdHI7Cit9CisKK3ZvaWQgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhh
bmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6
OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlkZW50
aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50
aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBp
ZiAobV9pZGVudGlmaWVyLnRvVUludDY0KCkgPT0gKmlkZW50aWZpZXIpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OklzU2FtZUVudHJ5KG1f
aWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIocmVzdWx0KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25u
ZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RmlsZUhhbmRsZShtX2lkZW50
aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBt
YWtlUmVmKCp0aGlzKSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUo
ZXJyb3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpV
bmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBo
YW5kbGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxlSWRlbnRp
Zmllci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShXVEZNb3ZlKG5hbWUpLCBXVEZN
b3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8
V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29u
bmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldERpcmVjdG9yeUhhbmRsZSht
X2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMsIHByb3RlY3RlZFRo
aXMgPSBtYWtlUmVmKCp0aGlzKSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRh
YmxlIHsKKyAgICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlv
bkNvZGUoZXJyb3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJD
b3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAg
YXV0byBoYW5kbGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxl
SWRlbnRpZmllci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUo
bmFtZSksIFdURk1vdmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHk6OnJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRl
UmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
dm9pZD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24p
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBX
ZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9j
b25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6UmVtb3ZlRW50cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSks
IFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJl
bW92ZWQsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlbW92ZWQpCisgICAg
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29u
dmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoeyB9KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5
OjpyZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9y
LCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRs
ZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBt
X2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpSZXNvbHZlKG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRp
b25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcGF0aCwgYXV0byBl
cnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICghcGF0aCkKKyAgICAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25D
b2RlKGVycm9yKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHBhdGgu
dmFsdWUoKSkpOworICAgIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQwYjMyMTRh
NGM2NjlhMjA5MGYwM2VmYjY5MTg2NTFmNWIxNDM5NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5LmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8
V2ViQ29yZS9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNz
IENvbm5lY3Rpb247Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1l
PiBjbGFzcyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Citj
bGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6
RmlsZVN5c3RlbUhhbmRsZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllciwgSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisK
K3ByaXZhdGU6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5
c3RlbUhhbmRsZUltcGwKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxl
SWRlbnRpZmllcigpIHsgcmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9p
ZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0
RmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lz
dGVtRmlsZUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRs
ZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYg
bmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZXNvbHZlKEZp
bGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNl
cHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQdHI8SVBDOjpDb25u
ZWN0aW9uPiBtX2Nvbm5lY3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMyMWM0MzNkYjU3ZDkx
MTczZTcwNDY4N2U0MWEuLjY3N2FiNjk4ZmM4NTk2ZjYzM2ExNzhkYjliZDRiZmM5Y2EzYzY3NmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJT
dG9yYWdlQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0aW9uLmgiCiAKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5jbHVkZSAiTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVz
c2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC00OCw2ICs0OSwyMSBAQCB2b2lk
IFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9y
aWdpbiwgQ29tcGxldGlvbkhhbgogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHko
TWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdChvcmlnaW4pLCBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKKyAgICBjb25uZWN0aW9uLnNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtR2V0
RGlyZWN0b3J5KG9yaWdpbiksIFt3ZWFrQ29ubmVjdGlvbiA9IG1ha2VXZWFrUHRyKGNvbm5lY3Rp
b24pLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRv
IGlkZW50aWZpZXIsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWlkZW50aWZp
ZXIpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0
aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgaWYgKCF3
ZWFrQ29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJD
b3JlOjpFeGNlcHRpb24geyBVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7
CisKKyAgICAgICAgYXV0byBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3Jl
YXRlKCppZGVudGlmaWVyLCAqd2Vha0Nvbm5lY3Rpb24pOworICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKHsg
fSwgV1RGTW92ZShpbXBsKSkpOworICAgIH0pOworfQorCiBJUEM6OkNvbm5lY3Rpb24mIFdlYlN0
b3JhZ2VDb25uZWN0aW9uOjpjb25uZWN0aW9uKCkKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YlN0b3JhZ2VDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAppbmRleCAxYzBlNjYzNjliNTZlZGI3MGU5M2E4
ODllMzI1MDM1NjY2OTMzNmU1Li40Nzc0YTdiMDRiMWNjZDgwZjIxNDk5ODI2ZDU0Nzc0NjAzYzcx
NjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViU3RvcmFnZUNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaApAQCAtMzEsNiArMzEsMTEgQEAgbmFt
ZXNwYWNlIElQQyB7CiBjbGFzcyBDb25uZWN0aW9uOwogfQogCituYW1lc3BhY2UgV2ViQ29yZSB7
Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViU3Rv
cmFnZUNvbm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFnZUNvbm5lY3Rpb24g
ewpAQCAtNDAsNiArNDUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZvaWQgcGVyc2lzdGVk
KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
KSBmaW5hbDsKICAgICB2b2lkIHBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgZmlsZVN5c3RlbUdl
dERpcmVjdG9yeShXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZT4+JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigp
OwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMyNWQwMzEwNTgyLi5m
NzkzYTAzMDliZDIyNWFlYjM5MDQ4NGNiNzlhNjhjN2FmZWE0ZjNjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMjEtMDktMjAgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAg
ICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0
YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAg
ICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0yMCAgQXl1bWkgS29q
aW1hICA8YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjgx
MTAyPyk6IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1sIGlzIGEgZmxha3kg
dGltZW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0MzdhNWUxNDdkN2Rk
YTQwZDFiZTliY2M3MTA5YTI2ODA1YWUyYWMuLmUwMDJkMWIzZmJkMzJmNTE4MGU1YjdhMTMxZTU1
NWQ1MmE5NGVhOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMz
IEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RD
aGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9y
dC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRv
d3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1h
Y2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFw
cGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2VhOWU0N2MuLmU0YjNk
Y2E0MjU1ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtMjAwLDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9zLyBbIFNraXAgXQog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBTa2lwIF0KIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lwIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFNraXAgXQorc3Rv
cmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2YWN5LXJlcG9ydCB0
ZXN0cyByZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAtcHJpdmFjeS1yZXBv
cnQvIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKaW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0YmI0MDA5Ni4uMWI0
ZGM4YjZkYTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
b3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1
ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsyLDUgQEAKIFBBU1Mg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJh
bWVzLgogUEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUgdW5kZWZpbmVkIGZv
ciBkYXRhIFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3Rvcnko
KSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIGlm
cmFtZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVK
RUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhD
RVBUSU9OOiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgp
IGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3Bl
bmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIo
KTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRvci5zdG9yYWdlLmdl
dERpcmVjdG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitGQUlMIG5hdmlnYXRv
ci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCBy
ZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBn
b3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0YjdiZTRkY2RhYWQ0
YWI5MzA3OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1NGY4MmYzNmVhMTMz
N2UwYjAyYTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDcgKzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQg
ZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5z
YWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5k
bGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJz
b3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBp
biBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBwZW5k
aW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3Jl
IGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxvYnMgaW4g
SW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRs
ZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUg
a2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRy
eS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVmY2M4ZDZiMjE5MzQz
MmJhMGNjZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBiYTJjYjhkMzM1YzYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVF
bnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEw
ICsxLDEwIEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3RvcnkgaGFu
ZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
aXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJl
bnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJl
dHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVF
bnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZv
ciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlz
U2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVj
dG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxz
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1NhbWVFbnRyeSBmb3Ig
aWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMg
cmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVu
dHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxl
IGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
aXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVz
IGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNT
YW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0
b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1Nh
bWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApp
bmRleCBlM2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0Li4zOTVlY2E1NTRi
ZGQ3YjhhYjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBh
bmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3QgY2hhbm5lbCBpbiBh
biBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9y
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMwZmI2Y2IyNjViODQz
YjJiMGNlZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGExMmRlYTZjNDgyODgx
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZS4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJv
eGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0
byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFt
ZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1l
c3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQg
aW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwg
dG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBj
cm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZh
aWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNz
YWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3Nz
IG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0
byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2Ug
cG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9y
dC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5MGUyM2M0OTFmNTg4
ZDFiNWI2ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1Y2UxMTFkOWZjMmY3
MDZhMGJiYzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEs
NiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
aW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2Fn
ZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUg
b3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNh
bWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3YjUuLmE5Mzg0N2Qw
MDM1YjNiZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1l
c3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA0NTEwNjVl
MzIyZGFmZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdmNGFmZmExOWMzODhl
ZTFjYzhkMDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9y
dCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
ZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2VydmljZSB3
b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1ZDkzZWU1NzIxNTc5
YmI5ZWZjNTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3NDZkNGNlYjI5NGQ2
NzBhN2Q1YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUg
b3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYwOTU5OTU4OTYzZjJm
NGQ2YTk3ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3ODFlZmM5N2IxZDBm
ZGM4ZmIxZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4g
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBi
bG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3MmZmM2Y1NzQxMmRk
MDhlYzZhNGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkwNGZkNjdiOTkxMWY3
MDcwNmFkOWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3Zl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNhMGY5NDcxMGM4ZTNl
MDVmOTVhMDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNkMjZmMzkxN2UwNzY4
NDBlNzFjZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw5
ICsxLDkgQEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBm
aWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJl
bW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVjdG9y
eSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmUoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZl
bHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNp
dmUgb3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZSgp
IHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1v
dmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3Rv
cnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJl
YWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3Rv
cnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhl
IHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3Rv
cnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CmluZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1ODgyMzAuLjc4MTcx
ZmYwZTQ4NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0x
LDEyICsxLDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVq
ZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBh
biBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3Rv
cmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBl
cmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9y
eUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
KSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3Jl
YXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWpl
Y3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1w
dHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0
b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9
dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEg
ZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRo
ICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5
SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Ig
d2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9y
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0
RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0ZGM3MzkxYjA4M2Zk
MDRhYmI4MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2ExYzg2ZmE2N2E2ZmQ0
Y2U4N2Y1NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0
ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5z
IGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBl
cmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxl
SGFuZGxlKGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGgg
dGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRG
aWxlSGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVl
KSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGlu
ZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUo
Y3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVz
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9
ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVz
IHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdp
dGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0
aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0Rmls
ZUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBw
YXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBh
cmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYxYzExMmRiOTlhNjk2
YzAzZmI0YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4MTIyOWQ3MmVlMDMw
NmE0YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CkBAIC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJh
dGlvbiBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IEBAYXN5bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3
b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBrZXlzOiBmdWxsIGl0
ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpdGVy
YXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRp
b24gZG9lc24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEBAYXN5
bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBn
ZXRzIGdhcmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3Zl
RW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXgg
YWM2ZmMxOTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgxNDcyMjViZGE4NDky
OGRjMzI2NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVF
bnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKLUZBSUwgcmVt
b3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxk
IGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnko
KSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5
KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1z
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0
aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1l
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92
ZUVudHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFs
cmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1lbXB0
eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCByZW1vdmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUg
YWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVu
dHJ5KCkgd2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFt
ZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVu
dHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dAppbmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBiMWIzMzQwLi5mNWU2
NTFiMWVmMWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUt
cmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFJl
c29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29y
cmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3Qg
YSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBSZXNvbHZlIHJl
dHVybnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBu
b24tYXNjaWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJl
c29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0
dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtl
ci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAzMzAxMGQ3MTg0NTIy
YmIzNzA1ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5MjNjNDQzOTdmNjQx
YzY1ZGNhZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVI
YW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRl
bnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIu
aHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZB
SUwgQXR0ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3Mg
aGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEwNGYxNWM3YWZhZGEx
YzE5N2E2YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2MWE1NzggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJ
TCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlm
aWVkIHRpbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgZ2V0RmlsZSgp
IHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRpbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1OWU2ZGJlMGIwYzhl
MmM2MGJhLi5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZmZWUwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3Jp
dGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEs
MTAgQEAKIAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBBcnJheUJ1
ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQg
dG8gd2l0aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2Fu
IGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21tYW5kIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEg
cGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8g
d2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBw
aXBlZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0
ZSBjb21tYW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVk
IHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRj
aCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1MTU3YTVkYWNlZmMx
MzVmYzA2NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4NzlhNTRiNjY2NDhlOCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0t
d3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0x
LDMxICsxLDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEg
YmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIHN0
cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRo
IHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0
cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBzdHJp
bmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9m
ZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEg
dmFsaWQgdXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmlu
ZyB3aXRoIHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8g
YW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0
ZSgpIHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVu
dCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBhdG9taWMgY2hh
bmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9t
aWMgd3JpdGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUoKSBhZnRlciBjbG9z
ZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3
cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlv
biBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9t
aWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBl
dmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNz
aW5nIGRhdGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3Jp
dGVQYXJhbXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRvIGFuIGVt
cHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgor
RkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBh
cmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6
ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBi
bG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91
dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBw
ZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdp
dGggYSBzdHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBv
ZmZzZXQgYmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1
dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdp
dGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHdpbmRvd3Mg
bGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdHlwZWQg
YXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdy
aXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZp
bGUgc3RyZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZh
aWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogdHJ1
bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2Uo
KSBvcGVyYXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNs
b3NlLCBldmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRh
dGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczog
c2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3Vs
ZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2JkNjRjODQxOTU1OTI0
NTIxMmYyZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2YwZGEzODk0IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFi
bGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAot
RkFJTCB0cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFyZW50
IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHdyaXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3aGVuIHBh
cmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMg
d3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBF
eGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFs
aXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8
IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjb21tYW5kcyBh
cmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBncm93
IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxl
KCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBp
cyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSBm
YWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6
IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250
ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtr
ZWVwRXhpc3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5p
dGlhbGl6ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zm
c2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFuZHMgYXJlIHF1ZXVl
ZCwgc3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9u
cwppbmRleCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2ZjZTQ2Li5kOGRjZWJl
NDg3MTAyMzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1bGxzY3JlZW4vZnVs
bC1zY3JlZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmls
ZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3Mt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMyMTMwOWJhZmYwNWU5
NDk0MTFiZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MjAgQEAKK1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mg
cm9vdEhhbmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBpcyAiZGlyZWN0b3J5
IgorUEFTUyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5kbGUua2luZCBpcyAi
ZGlyZWN0b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBmaWxlSGFuZGxlLm5h
bWUgaXMgImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIKK1BBU1MgaGFuZGxl
TmFtZXMubGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRpciIKK1BBU1MgaGFu
ZGxlTmFtZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3RyaW5nKCkgaXMgIk5v
dEZvdW5kRXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNp
Y3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3Rvcnkt
aGFuZGxlLWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4NTE0ZjQzNzYzNGVm
ZDRlMzBhOGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2Zp
bGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApAQCAtMCwwICsxLDEw
MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlw
dD4KK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9m
IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFuZGxlLCBkaXJIYW5k
bGUsIGZpbGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3JlYXRlRXJyb3I7CisK
K2Z1bmN0aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9yKSB7CisgICAgICAg
IHRlc3RGYWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKworZnVu
Y3Rpb24gZ2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9y
eSgpLnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0gaGFuZGxlOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIsICIiKTsKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7
CisgICAgICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsKKyAgICB9KS5jYXRj
aCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisK
K2Z1bmN0aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7CisgICAgZnJvbUhh
bmRsZS5nZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0cnVlIH0pLnRoZW4o
KGhhbmRsZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7CisgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAgICAg
IGNoZWNrSWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAgICB9KS5jYXRjaCgo
ZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1
bmN0aW9uIGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sKKyAgICBoYW5kbGUx
LmlzU2FtZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICBpc1NhbWVF
bnRyeSA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1lRW50cnkiKTsKKyAg
ICAgICAgY3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAgIH0pLmNhdGNoKChl
cnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVu
Y3Rpb24gY3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsKKyAgICBsZXQgb3B0
aW9ucyA9IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxlLmdldEZpbGVIYW5k
bGUoImZpbGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgZmlsZUhhbmRs
ZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLm5h
bWUiLCAiZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUu
a2luZCIsICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAgfSkuY2F0Y2goKGVy
cm9yKSA9PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAgIGZpbmlzaFRlc3Qo
ZXJyb3IpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGNyZWF0ZUVy
cm9yID0gZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3JlYXRlRXJyb3Iu
dG9TdHJpbmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQg
aGVyZS4iKTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQorCitmdW5jdGlvbiBy
ZXNvbHZlUGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhhbmRsZSkudGhlbigo
cmVzdWx0KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0OworICAgICAgICBzaG91
bGRCZSgiaGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJlbW92ZUVudHJ5KGRp
ckhhbmRsZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmlu
aXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92ZUVudHJ5KGZyb21I
YW5kbGUsIG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5hbWUpLnRoZW4oKHJl
c3VsdCkgPT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyByZW1vdmVkLgorICAg
ICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAgIH0pLmNhdGNoKChl
cnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgZ2V0
RGlyZWN0b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRvdy50ZXN0UnVubmVy
IGlzIG5vdCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="commit-queue"
          id="462240"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438760</attachid>
            <date>2021-09-20 17:42:41 -0700</date>
            <delta_ts>2021-09-20 23:17:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920174240.patch</filename>
            <type>text/plain</type>
            <size>186152</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi4w
ZTU3NzI4NWQwODE0ZDJkNTk5OTRhYzkyYTYzMjQzMjJjZTY1ZTAzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgxIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWc6IEFkZGVkLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9k
ZWNsYXJlZCk6CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpj
b25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAo
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHku
aDogQWRkZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRl
U2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAy
ZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdlZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAg
ICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAg
ICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBN
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVs
ZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEy
ZTEuLmRiYjA4YWQ1YzZmODllNmE2MTNjZWVmNTNlYzYyOTk2YmFhNDA0YWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
IAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9t
aXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01h
bGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5n
JiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBs
PiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAK
LUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2lu
ZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRs
ZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQog
Ci12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3Ry
aW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVI
YW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpHZXRGaWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0
ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAg
ICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9
KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
OjpHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRp
b25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpHZXREaXJlY3RvcnlPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90
U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBs
KCkuZ2V0RGlyZWN0b3J5SGFuZGxlKFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBb
cHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAg
ICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNl
LnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJl
c29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+LCBET01Q
cm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpyZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21pc2VEZWZl
cnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsg
Tm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5yZWN1cnNpdmUgOiBmYWxzZTsKKyAg
ICBpbXBsKCkucmVtb3ZlRW50cnkoV1RGTW92ZShuYW1lKSwgZGVsZXRlUmVjdXJzaXZlbHksIFtw
cm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAg
ICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCi12b2lkIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2Up
Cit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRs
ZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4m
JiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRl
ZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGltcGwoKS5yZXNvbHZlKGhhbmRs
ZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAg
IHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRlZDQ4Yzk0N2Y0MzQ1MDJiLi43
YzQ3ZTc1NWVjMGE5NmQwYmYyNTllZTU0M2MyNWU0NmZhZjEwNDc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAotY2xhc3MgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKK2NsYXNzIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAgICAg
V1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIHB1Ymxp
YzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYsMTQgKzQ2LDE4IEBAIHB1Ymxp
YzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9OwogICAgIH07CiAKLSAgICBzdGF0
aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7Ci0gICAg
dm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRG
aWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZp
bGVIYW5kbGU+PiYmKTsKLSAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcm
IG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpOwotICAgIHZv
aWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9w
dGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCByZXNvbHZlKGNv
bnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURM
VVNWU3RyaW5nPj4mJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1w
bD4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9u
YWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVT
eXN0ZW1GaWxlSGFuZGxlPj4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5n
JiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7CisgICAg
dm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPFJlbW92ZU9wdGlv
bnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5n
Pj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
KworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lz
dGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRT
X0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAppbmRleCA5ZWRjMjA0ZTE3ZWUx
MzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZmNjNlNTcwMzljNmU5NDYyN2Vh
MjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKQEAgLTI2LDYg
KzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJK
U0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+
CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVt
RmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQor
UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0
cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSkpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lz
dGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpKQorRmlsZVN5c3RlbUZpbGVI
YW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVt
SGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFu
ZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vz
cy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUzOGI4YTUwNDgwZjNlMzIyNzlk
YzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3YWU2ZDFhMWU5MjcyZGQzMTMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwxMSArMzQsMTUgQEAgY2xhc3Mg
RmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0
ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUZpbGVIYW5k
bGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmls
ZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwog
ICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGU+PiYm
KTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcm
Jik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUpCisgICAgc3Rh
dGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSkg
eyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjpLaW5k
OjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRs
ZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFjMjExMmI2MDg1MGZiZi4uYjA3
NDQ4Y2ZlNWE2MDZkMGFiZWQ1MDM0YmQyNGZhOWRiNjIwOGE3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01B
S0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUpOwogCi1GaWxlU3lzdGVtSGFu
ZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5n
JiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhh
bmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkp
CisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtSGFu
ZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6On5GaWxlU3lzdGVt
SGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0
ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpZiAobV9raW5kICE9IGhhbmRs
ZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1lKCkpCisgICAgICAgIHJldHVybiBwcm9t
aXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBsLT5pc1NhbWVFbnRyeShoYW5kbGUuaW1w
bCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5
YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4uNjVhM2ZkNjdlYWZhYTBmZTA0NzcwZjU1
OTRhMDU4MzQyZmU5MmY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCkBAIC0zMSwyOSArMzEsMzIg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGw7CiBlbnVtIGNsYXNz
IFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNsYXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBw
dWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxlPiB7CiAgICAgV1RGX01BS0VfSVNPX0FM
TE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lz
dGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtpbmQgOiB1aW50OF90IHsKICAgICAgICAg
RmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsKLQotICAgIHZpcnR1YWwgfkZpbGVTeXN0
ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5kIGtpbmQoKSBjb25zdCB7IHJldHVybiBt
X2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7
IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1wbCgpIHsgcmV0dXJuIG1faW1wbC5nZXQo
KTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9N
UHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmls
ZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKIAogcHJv
dGVjdGVkOgotICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRs
ZUltcGw+JiYpOwogCiBwcml2YXRlOgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9Owog
ICAgIFN0cmluZyBtX25hbWU7CisgICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5k
ZXggMjA4ZTc0NWNjM2JmYzRjNzk3NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYz
YzVjODc3ZGU2ODNkNmFhODE2ZGJlYWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApA
QCAtMjksNiArMjksNyBAQCBlbnVtIEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAg
ICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVu
YWJsZWRCeVNldHRpbmc9RmlsZVN5c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtSGFuZGxlSW1wbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OWU0MmYzZDNhNDE5ODU5ZDkxMGM1
NDcwNTA4YWY3ZDJlOTY5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBl
bmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDog
cHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2
aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRp
b25hbDx1aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBn
ZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4m
Jik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVFbnRyeShTdHJpbmcmJiBuYW1lLCBib29sIHJlY3Vyc2l2ZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpID0gMDsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmgKaW5kZXggOTE0NGEzZDdhMzQ0YTBjOGIz
MWY5NGI2NmFmMDg3ODcyZTcxMGM2YS4uZDcwZWNmM2YwZWFmY2E0YmVlNjgxMzg2YjVjYTY0OWFh
YTU0NjExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15
U3RvcmFnZVByb3ZpZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmgKQEAgLTUxLDYgKzUxLDExIEBAIHByaXZhdGU6CiAgICAgICAg
IHsKICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKICAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KENsaWVudE9yaWdpbiYm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH0pOwor
ICAgICAgICB9CiAgICAgfTsKIAogICAgIFN0b3JhZ2VDb25uZWN0aW9uJiBzdG9yYWdlQ29ubmVj
dGlvbigpIGZpbmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
U3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9y
YWdlQ29ubmVjdGlvbi5oCmluZGV4IGRkMTYyNGFmYmE3NTk4MjVmN2FkZjY4ZGQ3MzRmZmVkNjhj
NzU1MzMuLjY2ODhmNGI4Njg0ODBmZDU3YWY0ODljMTExOTFjMDc2MGUwNWY2NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlvbi5oCkBA
IC0yNSwxMSArMjUsMTQgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CisKIHN0cnVjdCBDbGllbnRPcmlnaW47
CiAKIGNsYXNzIFN0b3JhZ2VDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZUNv
bm5lY3Rpb24+IHsKQEAgLTM3LDYgKzQwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgflN0b3Jh
Z2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwogICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xp
ZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFn
ZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMw
OWUuLjdjMTY4OTA2NTdlMGNiMWMyMjFiMTAxNzU0YjNlYzNiMzRhMjhlMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcs
OCArMjcsMTAgQEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xp
ZW50T3JpZ2luLmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
KyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZp
Z2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYv
SXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3Rv
cmFnZU1hbmFnZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBw
cm9taXNlKQorc3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3Rv
cmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307
CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1h
bmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJO
YXZpZ2F0b3IgZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAg
ICAgYXV0byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsK
ICAgICBpZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRp
b24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Cisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMg
aW52YWxpZCJfcyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKKyAgICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNv
bm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVj
dGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlk
Il9zIH07CiAKLSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwot
ICAgIGlmICghb3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1
cm4gQ29ubmVjdGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5k
YXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAg
YXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBp
ZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2Vw
dGlvbigpKTsKIAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50
b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShw
cm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbklu
Zm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAg
IHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3RlZChXVEZNb3ZlKGNvbm5l
Y3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJz
aXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAg
ICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
Ik5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZv
T3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09y
RXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
Y29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0
byBjb250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBp
ZiAoIWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBh
dXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICgh
Y29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IElu
dmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rp
b24tPnBlcnNpc3QoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgp
IH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
eworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJl
bGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9u
LnBlcnNpc3QoV1RGTW92ZShjb25uZWN0aW9uSW5mby5vcmlnaW4pLCBbcHJvbWlzZSA9IFdURk1v
dmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5y
ZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFj
ZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1l
bnRlZCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0
aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlv
bigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJu
IGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShXVEZNb3Zl
KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0
byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQor
ICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9u
KCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVl
KCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFk
YTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3
MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNl
OwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0
aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFn
ZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsK
QEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3Jh
Z2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsK
KyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBX
ZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRl
eCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgz
NWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4
OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRh
YmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9q
cy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5j
cHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIz
ZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYw
ZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBF
Qjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1ND
b25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQy
NTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNB
MjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAv
KiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYg
LyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgx
RjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5
NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAw
RkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1h
Z2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAw
MzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4
LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87
IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0
ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nl
c3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMy
QzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1
M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1
ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4
MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyog
RmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRD
Ry5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3
RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlG
MTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2du
aXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFs
dGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQw
QzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2
RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2
RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVk
T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlh
Q2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JE
MDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZC
MUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYz
QjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1
QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywK
KwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9t
LmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVj
dGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRN
TENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkw
RiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcg
QEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAg
Ki8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAq
LywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwg
Ki8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0Zp
bGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBT
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICsz
MjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxl
RW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVD
NDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJC
QUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVh
ZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4
NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFu
ZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNp
bmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVl
IHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAg
IHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsK
K30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCos
IEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYm
IGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxl
LmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNy
ZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSho
YW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2
ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVk
MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNj
cmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlw
dEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4
IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5
MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VX
b3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGZjMzUyZTg0YjU0MjM5YmEyODZlNDYx
NGFmMzgyNzNmOTE2YWEyYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgKQEAgLTAsMCArMSw3MiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRp
b25Db2RlLmg+CisjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3QgeworICAg
IEVtcHR5LAorICAgIEZpbGVOb3RGb3VuZCwKKyAgICBJbnZhbGlkTmFtZSwKKyAgICBJbnZhbGlk
TW9kaWZpY2F0aW9uLAorICAgIFR5cGVNaXNtYXRjaCwKKyAgICBVbmtub3duCit9OworCitpbmxp
bmUgV2ViQ29yZTo6RXhjZXB0aW9uQ29kZSBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IgZXJyb3IpCit7CisgICAgc3dpdGNoIChlcnJvcikgeworICAgIGNhc2Ug
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kOgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6Tm90Rm91bmRFcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb246CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpJbnZhbGlkTW9kaWZpY2F0aW9uRXJyb3I7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2g6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpUeXBlRXJyb3I7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJu
IFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlVua25vd25FcnJvcjsKKyAgICB9Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCituYW1lc3BhY2UgV1RGIHsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHsKKyAgICB1c2luZyB2
YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RW1wdHksCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWROYW1lLAorICAgICAgICBX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkludmFsaWRNb2RpZmljYXRpb24sCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoLAorICAgICAg
ICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24KKyAgICA+OworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV1RGCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hMzE0NGU5OWJhMjQyNWM1ODMzZmQ1MzRhNGFjMjlmYzcwYzViOGM0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmNwcApAQCAtMCwwICsxLDEzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIgorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworI2lmIE9TKFdJTkRPV1MpCitj
b25zdGV4cHIgY2hhciBwYXRoU2VwYXJhdG9yID0gJ1xcJzsKKyNlbHNlCitjb25zdGV4cHIgY2hh
ciBwYXRoU2VwYXJhdG9yID0gJy8nOworI2VuZGlmCisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIG1hbmFn
ZXIsIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIG5hbWUpCisg
ICAgOiBtX2lkZW50aWZpZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyOjpnZW5l
cmF0ZSgpKQorICAgICwgbV9tYW5hZ2VyKG1ha2VXZWFrUHRyKG1hbmFnZXIpKQorICAgICwgbV90
eXBlKHR5cGUpCisgICAgLCBtX3BhdGgocGF0aCkKKyAgICAsIG1fbmFtZShuYW1lKQoreworICAg
IEFTU0VSVCghbV9wYXRoLmlzRW1wdHkoKSk7CisKKyAgICBzd2l0Y2ggKG1fdHlwZSkgeworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeToKKyAgICAgICAg
RmlsZVN5c3RlbTo6bWFrZUFsbERpcmVjdG9yaWVzKG1fcGF0aCk7CisgICAgICAgIHJldHVybjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpGaWxlOgorICAgICAgICBp
ZiAoRmlsZVN5c3RlbTo6ZmlsZUV4aXN0cyhtX3BhdGgpKQorICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW06Om9wZW5GaWxlKG1fcGF0aCwgRmlsZVN5
c3RlbTo6RmlsZU9wZW5Nb2RlOjpXcml0ZSk7CisgICAgICAgIEZpbGVTeXN0ZW06OmNsb3NlRmls
ZShoYW5kbGUpOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNT
YW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byBwYXRoID0gbV9tYW5hZ2VyLT5nZXRQYXRoKGlkZW50aWZpZXIpOworICAgIGlmIChwYXRo
LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKG1fcGF0aCA9PSBwYXRoKTsKK30KKwordm9pZCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIFR5cGUgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fdHlwZSAhPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAg
aWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgLy8gaHR0cHM6
Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3ZhbGlkLWZpbGUtbmFtZQorICAg
IGlmIChuYW1lID09ICIuIiB8fCBuYW1lID09ICIuLiIgfHwgbmFtZS5jb250YWlucyhwYXRoU2Vw
YXJhdG9yKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0g
RmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAg
bV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgdHlwZSwgcGF0aCwgbmFtZSwgY3Jl
YXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OlR5cGU6OkZpbGUsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6Omdl
dERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChz
dGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVx
dWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5LCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRy
eShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRpcmVjdG9yeSkKKyAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5
QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5
c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBlKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3Vu
ZCk7CisKKyAgICBzd2l0Y2ggKHR5cGUudmFsdWUoKSkgeworICAgIGNhc2UgRmlsZVN5c3RlbTo6
RmlsZVR5cGU6OlJlZ3VsYXI6CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxl
U3lzdGVtOjpkZWxldGVGaWxlKHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAo
IWRlbGV0ZVJlY3Vyc2l2ZWx5KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KEZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lz
dGVtOjpkZWxldGVOb25FbXB0eURpcmVjdG9yeShwYXRoKSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6RW1wdHkpOworICAgIGRlZmF1bHQ6CisgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpFbXB0eSk7CisgICAgfQorfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1f
bWFuYWdlcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBhdXRvIHBhdGggPSBtX21h
bmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihWZWN0b3I8U3RyaW5nPiB7IH0sIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKworICAgIGF1dG8gcmVzdFBhdGggPSBwYXRo
LnN1YnN0cmluZyhtX3BhdGgubGVuZ3RoKCkpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3RQ
YXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7
Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42OWJmYzk3OGQwYjc1M2NmYzk3MzQ5OTJlNzFkZjc3MGNlNGUyYjhlCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2Vu
dW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4geworICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3MgVHlwZSA6IGJv
b2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZShGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZSk7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIGNvbnN0IFN0cmlu
ZyYgcGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorCisgICAgdm9pZCBpc1NhbWVFbnRy
eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIGdldERpcmVj
dG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZl
Y3RvcjxTdHJpbmc+PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgor
ICAgIHZvaWQgcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyPiBtX21hbmFnZXI7CisgICAgVHlwZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fcGF0aDsK
KyAgICBTdHJpbmcgbV9uYW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjQyNzE3
ZTcxZGQ4OWFhNjQxMjYyZThjNTE0OTIzMDVlZGQzYTIzOAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworZW51bSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlIHsgfTsKK3Vz
aW5nIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT47CisKK30gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjNlMjM5YjdjNGVlMzAyMmMwYTdkOTU3NTZlMmZkZDU0YTA2MzQ1NTUKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCkgPSBkZWZhdWx0
OworCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxl
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZSYgaGFuZGxlKQoreworICAgIEFTU0VSVCghbV9oYW5kbGVzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKTsKKworICAgIG1faGFuZGxlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQ
dHIoaGFuZGxlKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
dW5yZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllcikKK3sKKyAgICBBU1NFUlQobV9oYW5kbGVzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKwor
ICAgIG1faGFuZGxlcy5yZW1vdmUoaWRlbnRpZmllcik7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgaWYgKGF1dG8g
aGFuZGxlID0gbV9oYW5kbGVzLmdldChpZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIGhhbmRs
ZS5nZXQoKTsKKworICAgIHJldHVybiBudWxscHRyOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjZjYzQzYzNhZmY2YzExY2VmMTNiYzNjYzdmMGYyODgwMjMyNTA3YgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsKKworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSB7CisgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitwdWJsaWM6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSgp
OworICAgIHZvaWQgcmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSYpOworICAgIHZvaWQgdW5yZWdpc3RlckhhbmRs
ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAgIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlKiBnZXRIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsK
KworcHJpdmF0ZToKKyAgICBIYXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisKK30g
Ly8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmUwMzRkYTUwYWJmZjFmMDlmNzJhNGUyNzA5ZGJmNWQ2YjE5MzBmMWYKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMCwwICsxLDk5IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgor
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIo
U3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkp
CisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkp
Cit7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcigpCit7CisgICAgZm9yIChhdXRvIGlkZW50aWZpZXIgOiBtX2hhbmRsZXMua2V5cygpKQor
ICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaWRlbnRpZmllcik7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSB0eXBlLCBjb25zdCBT
dHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7
CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBhdGgpOwor
ICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6
OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmlsZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4
aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpmaWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYg
KCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAg
ICAgYXV0byBleGlzdGluZ0hhbmRsZVR5cGUgPSAoZXhpc3RpbmdGaWxlVHlwZS52YWx1ZSgpID09
IEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpSZWd1bGFyKSA/IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpUeXBlOjpGaWxlIDogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeTsK
KyAgICAgICAgaWYgKGV4aXN0aW5nSGFuZGxlVHlwZSAhPSB0eXBlKQorICAgICAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRsZSA9IG1ha2VVbmlx
dWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBwYXRoLCBuYW1lKTsKKyAg
ICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIgPSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAg
ICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5zdXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZd
IHsKKyAgICAgICAgbV9jb25uZWN0aW9ucy5hZGQoY29ubmVjdGlvbik7CisgICAgICAgIHJldHVy
biBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4geyB9OworICAgIH0p
Lml0ZXJhdG9yLT52YWx1ZS5hZGQobmV3SGFuZGxlSWRlbnRpZmllcik7CisgICAgbV9yZWdpc3Ry
eS5yZWdpc3RlckhhbmRsZShuZXdIYW5kbGVJZGVudGlmaWVyLCAqbmV3SGFuZGxlKTsKKyAgICBt
X2hhbmRsZXMuYWRkKG5ld0hhbmRsZUlkZW50aWZpZXIsIFdURk1vdmUobmV3SGFuZGxlKSk7Cisg
ICAgY29tcGxldGlvbkhhbmRsZXIobmV3SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RW1wdHkpOworfQorCitjb25zdCBTdHJpbmcmIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjo6Z2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
cikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy5maW5kKGlkZW50aWZpZXIpOworICAg
IHJldHVybiBoYW5kbGUgPT0gbV9oYW5kbGVzLmVuZCgpID8gZW1wdHlTdHJpbmcoKSA6IGhhbmRs
ZS0+dmFsdWUtPnBhdGgoKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQoreworICAgIGlmIChh
dXRvIGhhbmRsZXMgPSBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZmluZChjb25uZWN0aW9uLnVuaXF1
ZUlEKCkpOyBoYW5kbGVzICE9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQoKSkgeworICAgICAg
ICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVlKSB7CisgICAgICAg
ICAgICBtX2hhbmRsZXMucmVtb3ZlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgYXV0
byBoYW5kbGUgPSBtX2hhbmRsZXMudGFrZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgICAg
IG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAg
fQorICAgICAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24ucmVtb3ZlKGhhbmRsZXMpOworICAgICAg
ICBtX2Nvbm5lY3Rpb25zLnJlbW92ZShjb25uZWN0aW9uKTsKKyAgICB9Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgY3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3RvcnksIG1fcGF0aCwgZW1wdHlTdHJpbmcoKSwgdHJ1
ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xN2QxYjllMmQyNzcy
NjgxMTQyMTg2MmViYjcxODIwNzk5NDY3MjUyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBA
IC0wLDAgKzEsNTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsK
K3B1YmxpYzoKKyAgICBleHBsaWNpdCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYg
cGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoKTsKKworICAgIHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlv
biYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNv
bnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4s
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICBjb25zdCBTdHJpbmcmIGdldFBhdGgo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25D
bG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnkoSVBDOjpDb25u
ZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKwor
cHJpdmF0ZToKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkmIG1fcmVnaXN0cnk7CisgICAgV2Vha0hhc2hTZXQ8SVBDOjpDb25uZWN0aW9uPiBt
X2Nvbm5lY3Rpb25zOworICAgIEhhc2hNYXA8SVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCwgSGFz
aFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+PiBtX2hhbmRsZXNCeUNvbm5l
Y3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCAz
NjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMzM2M3Li4yNzU3MjQ1NWY1ZDZhODE1
OGM2YjAwYjE0YzJkNGRjNWFmNmQ5ZTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcApA
QCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk5ldHdvcmtT
dG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUg
Ik5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0NyeXB0b0RpZ2VzdC5oPgpAQCAtNDEs
NiArNDMsNyBAQCBSZWY8TmV0d29ya1N0b3JhZ2VNYW5hZ2VyPiBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSQogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBT
dHJpbmcmIHBhdGgpCiAgICAgOiBtX3Nlc3Npb25JRChzZXNzaW9uSUQpCiAgICAgLCBtX3F1ZXVl
KFdvcmtRdWV1ZTo6Y3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0LlN0b3JhZ2UiKSkKKyAgICAsIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeShtYWtlVW5pcXVlUmVmPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnk+KCkpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKIApAQCAtNTMsNiArNTYsOCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwog
fQogCitOZXR3b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKSA9IGRl
ZmF1bHQ7CisKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdGFydFJlY2VpdmluZ01lc3Nh
Z2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTY1LDYgKzcwLDEwIEBAIHZvaWQgTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29u
bmVjdGlvbiYKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCiAgICAgY29ubmVjdGlv
bi5yZW1vdmVXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKTsKKyAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IFJlZiB7ICp0aGlzIH0sIHByb3RlY3RlZENvbm5lY3Rpb24g
PSBSZWYgeyBjb25uZWN0aW9uIH1dKCkgeworICAgICAgICBmb3IgKGF1dG8mIG9yaWdpblN0b3Jh
Z2VNYW5hZ2VyIDogbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2Vycy52YWx1ZXMoKSkKKyAgICAg
ICAgICAgIG9yaWdpblN0b3JhZ2VNYW5hZ2VyLT5jb25uZWN0aW9uQ2xvc2VkKHByb3RlY3RlZENv
bm5lY3Rpb24uZ2V0KCkpOworICAgIH0pOwogfQogCiBzdGF0aWMgU3RyaW5nIGVuY29kZShjb25z
dCBTdHJpbmcmIHN0cmluZywgRmlsZVN5c3RlbTo6U2FsdCBzYWx0KQpAQCAtMTExLDYgKzEyMCw1
OSBAQCB2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChjb25zdCBXZWJDb3JlOjpD
bGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldAogICAgIGNvbXBsZXRpb25IYW5kbGVyKHRydWUp
OwogfQogCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbUdldERpcmVjdG9y
eShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAg
ICBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKG9yaWdpbikuZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5nZXQoKSkuZ2V0RGlyZWN0b3J5
KGNvbm5lY3Rpb24sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFy
Z2V0SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgaGFuZGxlLT5pc1NhbWVF
bnRyeSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisK
K3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlv
biYgY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldEZpbGVIYW5kbGUoY29ubmVjdGlvbiwgbmFt
ZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwor
dm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIAorICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5nZXREaXJlY3RvcnlIYW5kbGUo
Y29ubmVjdGlvbiwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcm
IG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRs
ZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGZhbHNlLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAg
IGhhbmRsZS0+cmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVjdXJzaXZlbHksIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlc29s
dmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAg
IGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxs
b3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+cmVz
b2x2ZSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisK
IHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBBU1NFUlQo
UnVuTG9vcDo6aXNNYWluKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCmluZGV4IGY2ZGFlZDEz
ZjI2NzUzNzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLmJlMGFkOGVmNTBhMWIwYWM2Mzc5ZDhi
OTkwNGI1MzNkMzRmNmEzZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI2LDYgKzI2
LDggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogI2lu
Y2x1ZGUgPFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5o
PgpAQCAtMzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2luOwogCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKIAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDogcHVibGljIElQQzo6Q29ubmVj
dGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdlTWFuYWdlciBmaW5hbCA6IHB1
YmxpYyBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6
CiAgICAgc3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IGNyZWF0ZShQQUw6OlNlc3Np
b25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDgsMTQgKzUyLDIxIEBAIHB1YmxpYzoK
IAogcHJpdmF0ZToKICAgICBOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQsIGNv
bnN0IFN0cmluZyYgcGF0aCk7CisgICAgfk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwogICAgIE9y
aWdpblN0b3JhZ2VNYW5hZ2VyJiBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0IFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYpOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgKGltcGxl
bWVudGVkIGJ5IGdlbmVyYXRlZCBjb2RlKQogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBD
OjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJik7CiAKLSAgICAvLyBNZXNzYWdlIEhhbmRsZXJz
CisgICAgLy8gTWVzc2FnZSBoYW5kbGVycwogICAgIHZvaWQgcGVyc2lzdGVkKGNvbnN0IFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogICAg
IHZvaWQgcGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoSVBD
OjpDb25uZWN0aW9uJiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
cj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIGdl
dEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lk
IGdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOwor
ICAgIHZvaWQgcmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCByZW1vdmVkLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAg
dm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8VmVjdG9yPFN0cmluZz4+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CiAKICAg
ICBQQUw6OlNlc3Npb25JRCBtX3Nlc3Npb25JRDsKICAgICBSZWY8V29ya1F1ZXVlPiBtX3F1ZXVl
OwpAQCAtNjMsNiArNzQsOCBAQCBwcml2YXRlOgogICAgIEZpbGVTeXN0ZW06OlNhbHQgbV9zYWx0
OwogICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3Jp
Z2luU3RvcmFnZU1hbmFnZXI+PiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzOwogICAgIEhh
c2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2luU3RvcmFn
ZU1hbmFnZXI+PiBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnM7CisKKyAgICBVbmlxdWVS
ZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeT4gbV9maWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdv
cmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmZWMyNzFlMGU4ZGU4OThmZjM5OTI2
Y2I4NjQwZWExMGYxNzk5NTUwLi42YWFmYzllNzVkYzRhZThhYTA2NDUzODUxN2UwYzc4YzZjNTRh
NDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KQEAgLTI2
LDQgKzI2LDEwIEBACiAgbWVzc2FnZXMgLT4gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIHsKICAgICBQ
ZXJzaXN0ZWQoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBl
cnNpc3RlZCkgQXN5bmMKICAgICBQZXJzaXN0KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4g
b3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCisgICAgRmlsZVN5c3RlbUdldERpcmVj
dG9yeShzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKHN0ZDo6b3B0aW9u
YWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+IGlkZW50aWZpZXIs
IGVudW06dWludDhfdCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IgZXJyb3IpIEFzeW5j
IFdhbnRzQ29ubmVjdGlvbgorICAgIElzU2FtZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChib29sIHJlc3VsdCkgQXN5bmMK
KyAgICBHZXRGaWxlSGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAo
c3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4g
aWRlbnRpZmllciwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBl
cnJvcikgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgR2V0RGlyZWN0b3J5SGFuZGxlKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90
IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0
aW9uCisgICAgUmVtb3ZlRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkpIC0+
IChib29sIHJlbW92ZWQsIGVudW06dWludDhfdCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IgZXJyb3IpIEFzeW5jCisgICAgUmVzb2x2ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyKSAtPiAoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3Ry
aW5nPj4gcGF0aCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBl
cnJvcikgQXN5bmMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDc1YTFhZWQyNDlm
OTI4NTk5MGY2NmNhOTY4MTczNzg4ZWY0N2QwNTQuLmUzYzdlNjUxODM4YTMxMzhjOTNiZjY5YmJl
NTU2YWNkNGZlZWNlMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYs
OSBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2Vy
LmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKIG5hbWVzcGFjZSBXZWJLaXQgewog
CiBlbnVtIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0TW9kZSA6IGJv
b2wgeyBCZXN0RWZmb3J0LCBQZXJzaXN0ZW50IH07CkBAIC0zOCwxMiArNDEsMzQgQEAgcHVibGlj
OgogICAgICAgICAsIG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgIHsKICAgICB9CisKICAg
ICBTdG9yYWdlQnVja2V0TW9kZSBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAgICAg
dm9pZCBzZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUpIHsgbV9tb2RlID0gbW9kZTsgfQor
CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikK
KyAgICB7CisgICAgICAgIGlmIChtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAg
ICAgIG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLT5jb25uZWN0aW9uQ2xvc2VkKGNvbm5lY3Rp
b24pOworICAgIH0KKworICAgIFN0cmluZyB0eXBlU3RvcmFnZVBhdGgoY29uc3QgU3RyaW5nJiBz
dG9yYWdlSWRlbnRpZmllcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3Jvb3RQYXRo
LmlzRW1wdHkoKSA/IGVtcHR5U3RyaW5nKCkgOiBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdD
b21wb25lbnQobV9yb290UGF0aCwgc3RvcmFnZUlkZW50aWZpZXIpOworICAgIH0KKworICAgIEZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQorICAgIHsKKyAgICAgICAgaWYgKCFt
X2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAgICAgIG1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+KHR5cGVTdG9y
YWdlUGF0aCgiRmlsZVN5c3RlbSIpLCByZWdpc3RyeSk7CisKKyAgICAgICAgcmV0dXJuICptX2Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKKyAgICB9CisKIHByaXZhdGU6CiAgICAgU3RyaW5nIG1f
cm9vdFBhdGg7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBTdG9yYWdlQnVja2V0TW9k
ZSBtX21vZGUgeyBTdG9yYWdlQnVja2V0TW9kZTo6QmVzdEVmZm9ydCB9OworICAgIHN0ZDo6dW5p
cXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyOwogfTsKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyKFN0
cmluZyYmIHBhdGgpCkBAIC01MywxNCArNzgsMjkgQEAgT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9y
aWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpCiAKIE9yaWdpblN0b3JhZ2VNYW5hZ2Vy
Ojp+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CiAKLXZvaWQgT3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OnBlcnNpc3QoKQordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlv
bkNsb3NlZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKG1fZGVmYXVs
dEJ1Y2tldCkKKyAgICAgICAgbV9kZWZhdWx0QnVja2V0LT5jb25uZWN0aW9uQ2xvc2VkKGNvbm5l
Y3Rpb24pOworfQorCitPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldCYgT3JpZ2lu
U3RvcmFnZU1hbmFnZXI6OmRlZmF1bHRCdWNrZXQoKQogewotICAgIG1fcGVyc2lzdGVkID0gdHJ1
ZTsKLSAgICAKICAgICBpZiAoIW1fZGVmYXVsdEJ1Y2tldCkKICAgICAgICAgbV9kZWZhdWx0QnVj
a2V0ID0gbWFrZVVuaXF1ZTxTdG9yYWdlQnVja2V0PihtX3BhdGgsICJkZWZhdWx0Il9zKTsKIAot
ICAgIG1fZGVmYXVsdEJ1Y2tldC0+c2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVyc2lzdGVu
dCk7CisgICAgcmV0dXJuICptX2RlZmF1bHRCdWNrZXQ7Cit9CisKK3ZvaWQgT3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OnBlcnNpc3QoKQoreworICAgIG1fcGVyc2lzdGVkID0gdHJ1ZTsKKyAgICBkZWZh
dWx0QnVja2V0KCkuc2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVyc2lzdGVudCk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3Ry
eSkKK3sKKyAgICByZXR1cm4gZGVmYXVsdEJ1Y2tldCgpLmZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cihyZWdpc3RyeSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuaAppbmRleCA5ZTQyMTViM2M3MDBiZDQ5OWQwNmUzYjkwNGMxNGVmZDY1Mjg5ZjMwLi5iYzYy
Y2Y0MjJmNWEzNWRkMmVjNGJiYTY4NTYxZjcxZTEwYjY4OTU3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuaApAQCAtMjUsMjIgKzI1LDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5OworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworCiBjbGFz
cyBPcmlnaW5TdG9yYWdlTWFuYWdlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6CiAgICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7
CiAgICAgfk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCk7CiAKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9z
ZWQoSVBDOjpDb25uZWN0aW9uJik7CiAgICAgYm9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7IHJldHVy
biBtX3BlcnNpc3RlZDsgfQogICAgIHZvaWQgcGVyc2lzdCgpOworICAgIEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkmKTsKIAogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIFN0b3JhZ2VCdWNrZXRN
b2RlIDogYm9vbDsKICAgICBjbGFzcyBTdG9yYWdlQnVja2V0OworICAgIFN0b3JhZ2VCdWNrZXQm
IGRlZmF1bHRCdWNrZXQoKTsKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBt
X2RlZmF1bHRCdWNrZXQ7CiAgICAgU3RyaW5nIG1fcGF0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oLm9yaWcg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuaC5vcmlnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllNDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0ZWZkNjUy
ODlmMzAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaC5vcmlnCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgor
CituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXIgeworICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGV4cGxpY2l0IE9yaWdpblN0
b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpOworICAgIH5PcmlnaW5TdG9yYWdlTWFuYWdlcigp
OworCisgICAgYm9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7IHJldHVybiBtX3BlcnNpc3RlZDsgfQor
ICAgIHZvaWQgcGVyc2lzdCgpOworCitwcml2YXRlOgorICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1
Y2tldE1vZGUgOiBib29sOworICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisKKyAgICBzdGQ6OnVu
aXF1ZV9wdHI8U3RvcmFnZUJ1Y2tldD4gbV9kZWZhdWx0QnVja2V0OworICAgIFN0cmluZyBtX3Bh
dGg7CisgICAgYm9vbCBtX3BlcnNpc3RlZCB7IGZhbHNlIH07Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNz
YWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXgg
ZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWViZjcyYjE1Yi4uM2Y5MzZkMjUyOTAyZTUy
NDc4ZWI4MTEwOWJlMjY4ZGEwOTVlNWI4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0
L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2Jl
X2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVudFdvcmxkSWRlbnRp
ZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJRCcsCiAgICAgICAg
ICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6
OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRleCA5M2RiYTZjZDk2
MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZjOGI5NWNmZDEzOWEw
ZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUsOSBAQCBOZXR3b3Jr
UHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBuby11bmlmeQogTmV0
d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIEBuby11
bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENv
bm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdl
TWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIu
Y3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250ZW50L1dlYlVzZXJD
b250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vV2ViQXV0
aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9X
ZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTkxZjc2YjM4OTRlOTE3YzUyN2M0Zjkz
OGZlZWQ4NjNjNzcwMWM2OS4uZDEyMGU0YWM1NGVjZTgwODU2NTJiMWE5YzUwZTA1YzFhYzM2YmQw
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0zLDcgKzMsNyBAQAogCWFyY2hpdmVWZXJzaW9uID0gMTsKIAljbGFzc2VzID0gewogCX07
Ci0Jb2JqZWN0VmVyc2lvbiA9IDUyOworCW9iamVjdFZlcnNpb24gPSA1NDsKIAlvYmplY3RzID0g
ewogCiAvKiBCZWdpbiBQQlhBZ2dyZWdhdGVUYXJnZXQgc2VjdGlvbiAqLwpAQCAtMTQ2OSw2ICsx
NDY5LDkgQEAKIAkJOTMwODVEREYyNkU1QkNGMTAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFu
YWdlck1lc3NhZ2VzUmVwbGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTMwODVEQ0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFu
YWdlck1lc3NhZ2VzUmVwbGllcy5oICovOyB9OwogCQk5MzA4NURFMDI2RTVCQ0ZEMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcgLyogTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmggKi87IH07CiAJCTkzMDg1REUxMjZFNUJEMTMwMDBFQzZBNyAvKiBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VzLmggKi87IH07CisJCTkzMTJCQUQ1MjZGMzNDMjYwMEZEREY1RiAvKiBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuaCAqLzsgfTsKKwkJOTMxMkJBRDYyNkYzM0MyOTAwRkRERjVGIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaCAqLzsgfTsKKwkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgg
Ki87IH07CiAJCTkzMjFENTg2MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNv
bnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIu
aCAqLzsgfTsKIAkJOTMyMUQ1OEExQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9u
VHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMyMzYxMUUxQjAx
NURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMzYxMUQxQjAxNURBODAwRkE5MjMy
IC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNDg1LDYgKzE0ODgsNyBAQAogCQk5MzU2RjJERjIx
NTJCNzIzMDBFNkQ1REYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERjIxNTFBREY0MDA3RjQ1NUYgLyog
V2ViU1dPcmlnaW5TdG9yZS5jcHAgKi87IH07CiAJCTkzNTZGMkUwMjE1MkI3NTIwMEU2RDVERiAv
KiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REQyMTUxQURGMzAwN0Y0NTVGIC8qIFdl
YlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgKi87IH07CiAJCTkzNTZGMkUxMjE1MkI3
NjYwMEU2RDVERiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0RTEyMTUxQURGNDAwN0Y0NTVGIC8q
IFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgKi87IH07CisJCTkzNUI1NzlBMjZGNTE5MzMwMDhC
NDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVCNTc5ODI2RjUxMjcwMDA4QjQ4QUMg
LyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovOyB9OwogCQk5MzVFRUI5QjEy
Nzc2MTdDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5ODEyNzc2MTZEMDAz
MzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1RUVCOUYxMjc3NjFBQzAwMzMyMkI4
IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVC
YWNrRm9yd2FyZExpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk5MzY4RUVERTIzMDNBOTAyMDBCREIxMUEgLyogU3RvcmFnZU1hbmFnZXJTZXRN
ZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTM2OEVFREMyMzAzQThEODAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5hZ2VyU2V0TWVz
c2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKQEAgLTQ5MDQsNiArNDkwOCwxNCBAQAogCQk5MzA4NURD
QzI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdl
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzA4NURDRTI2RTJF
OTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3Nh
Z2VzUmVwbGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MDI2RjA2
MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUzMjZGMDZB
QjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJFMDI2Rjg1
QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFj
dGlvbkNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1l
ZGlhdGVBY3Rpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
MjFENTg3MUEzOEVFNzQwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlv
bkNvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg5MUEz
OEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTQ5MTgsNiArNDkzMCw4IEBACiAJCTkzNDI1ODhGMjU1NURDQTUw
MDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzNDI1ODk4MjU1QjUzNEIwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRp
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQZXJtaXNzaW9uVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNEI3MjQzMTlGNUI5QkUw
MEFFOTZENiAvKiBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV0tBY3Rpb25NZW51SXRlbVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
NUVFQjk1MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlz
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk2MTI3NzYxNkQwMDMz
MjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2Fy
ZExpc3RJdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC05NjkxLDYgKzk3MDUsMTQgQEAKIAkJOTMwODVEQzIyNkUxQkI2NTAwMEVDNkE3IC8qIHN0b3Jh
Z2UgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzMUEx
QkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi8sCisJCQkJ
OTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAq
LywKKwkJCQk5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUuaCAqLywKKwkJCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLmggKi8sCisJCQkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwICovLAorCQkJCTkzNUI1Nzk4MjZG
NTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8sCisJ
CQkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHAgKi8sCisJCQkJOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oICovLAogCQkJCTkzMDg1REMzMjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIuY3BwICovLAogCQkJCTkzMDg1REM0MjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3
b3JrU3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDNzI2RTFDNkVFMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluICovLApAQCAtMTAwMDYsNiArMTAwMjgs
OCBAQAogCQkJCUNENjE3ODExMUU2REU5ODAwMEZEQTU3RCAvKiBjb2NvYSAqLywKIAkJCQkyRDI4
RjNERjE4ODVDQ0I0MDA0QjlFQUUgLyogaW9zICovLAogCQkJCUJDMTExQURFMTEyRjVCOUEwMDMz
N0JBQiAvKiBtYWMgKi8sCisJCQkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwICovLAorCQkJCTkzMUEwNzVBMjZGMUI5NjgwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggKi8sCiAJCQkJMUE3Mjg0NDQxOTU5
RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwICovLAogCQkJCTFBNzI4
NDQ1MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmggKi8sCiAJCQkJ
RjQzQTlDREUyNUQ3MkUyRDAwOTkwRTI2IC8qIFNoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAg
Ki8sCkBAIC0xMjE3OCw2ICsxMjIwMiwxMCBAQAogCQkJCTFBQTU3NUZCMTQ5NkI1MjYwMEE0RUUw
NiAvKiBFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MkVCQkQ3MjUzN0VC
QUUwMDA1NTJCMyAvKiBFeHRyYVByaXZhdGVTeW1ib2xzRm9yVEFQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTdCODI2NDgyMzA1MEM1MTAwQjcyRUIwIC8qIEZpZG9TZXJ2aWNlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDYyNkYzM0MyOTAwRkRERjVGIC8qIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzVCNTc5QTI2RjUx
OTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDBCOTY2MUExOEUyNUFFMTAwQ0UxRjg4IC8q
IEZpbmRDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBOTBDMUY0MTI2NEZENzEwMDNFNDRE
NCAvKiBGaW5kQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzU5QzRBNTkxOEI4MTE3
NDAwN0JEQ0I2IC8qIEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24uaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmZiNWY5NTRhYmM1MjVkM2M5NzBjYmMzYWJjNDZiOTNkNDFhMzllMTEKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eS5jcHAKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5o
IgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIk5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRpb25P
ci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK1JlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICByZXR1cm4gYWRv
cHRSZWYoKm5ldyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KGlkZW50aWZpZXIsIGNvbm5l
Y3Rpb24pKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIDogbV9pZGVudGlmaWVyKGlk
ZW50aWZpZXIpCisgICAgLCBtX2Nvbm5lY3Rpb24oJmNvbm5lY3Rpb24pCit7Cit9CisKK3ZvaWQg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y29ubmVjdGlvbkNsb3NlZCgpCit7CisgICAg
bV9jb25uZWN0aW9uID0gbnVsbHB0cjsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5Ojppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9y
LCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRs
ZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIGlmIChtX2lkZW50aWZp
ZXIudG9VSW50NjQoKSA9PSAqaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKHRydWUpOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6SXNTYW1lRW50cnkobV9pZGVudGlmaWVyLCBt
YWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBl
PigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKV0oYm9vbCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxl
cihyZXN1bHQpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHk6OmdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6
RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBp
ZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNv
cmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9z
dCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwg
Y3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJlZiB7ICp0aGlzIH0s
IG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1
dG8gaGFuZGxlSWRlbnRpZmllciwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICgh
aGFuZGxlSWRlbnRpZmllcikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihX
ZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKyAg
ICAKKyAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAi
Q29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKGhhbmRsZUlkZW50aWZpZXIudmFsdWUoKSwg
Km1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkZpbGVT
eXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShoYW5kbGUpKSk7
CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RGly
ZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBp
ZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNv
cmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9z
dCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXREaXJlY3RvcnlIYW5kbGUobV9pZGVudGlmaWVyLCBu
YW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRo
aXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAg
aWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJyb3IpIH0p
OworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJy
b3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBoYW5kbGUgPSBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxlSWRlbnRpZmllci52YWx1
ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUobmFtZSksIFdURk1vdmUo
aGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHk6OnJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9pZD4mJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3du
RXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVtb3ZlRW50
cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSksIFtjb21wbGV0aW9uSGFu
ZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlbW92ZWQsIGF1dG8gZXJy
b3IpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlbW92ZWQpCisgICAgICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9u
Q29kZShlcnJvcikgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICB9
KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
V2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBp
cyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxl
SWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNl
bmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpSZXNvbHZl
KG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcGF0aCwgYXV0byBlcnJvcikgbXV0YWJsZSB7
CisgICAgICAgIGlmICghcGF0aCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsK
KworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHBhdGgudmFsdWUoKSkpOworICAg
IH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQwYjMyMTRhNGM2NjlhMjA5MGYwM2Vm
YjY5MTg2NTFmNWIxNDM5NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKQEAgLTAs
MCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lz
dGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENvbm5lY3Rpb247Cit9
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRp
b25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFzcyBGaWxlU3lzdGVt
RmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRs
ZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25u
ZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3ByaXZhdGU6CisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3RlbUhhbmRsZUltcGwK
KyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpIHsg
cmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBpc1NhbWVFbnRyeShG
aWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhj
ZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShTdHJp
bmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZT4+
JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1l
LCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+
JiYpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFtZSwgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25P
cjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJ
bXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxWZWN0b3I8
U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQdHI8SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5l
Y3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5l
Y3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMyMWM0MzNkYjU3ZDkxMTczZTcwNDY4N2U0MWEu
Ljc0YTYyYWQ3OWRkNjAxYTVkNDk4ZDlmM2YyZmM1MDM2NDA2ZjEzOTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0
b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0aW9uLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNs
dWRlICJXZWJQcm9jZXNzLmgiCkBAIC00OCw2ICs0OSwyMSBAQCB2b2lkIFdlYlN0b3JhZ2VDb25u
ZWN0aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxldGlv
bkhhbgogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdv
cmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdChvcmlnaW4pLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKSk7CiB9CiAKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJl
Y3RvcnkoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgY29ubmVjdGlv
biA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bigpLmNvbm5lY3Rpb24oKTsKKyAgICBjb25uZWN0aW9uLnNlbmRXaXRoQXN5bmNSZXBseShNZXNz
YWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KG9yaWdp
biksIFt3ZWFrQ29ubmVjdGlvbiA9IG1ha2VXZWFrUHRyKGNvbm5lY3Rpb24pLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGlkZW50aWZpZXIsIGF1
dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWlkZW50aWZpZXIpCisgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRv
RXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgaWYgKCF3ZWFrQ29ubmVjdGlvbikK
KyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24g
eyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAg
ICAgICAgYXV0byBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKCpp
ZGVudGlmaWVyLCAqd2Vha0Nvbm5lY3Rpb24pOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKHsgfSwgV1RG
TW92ZShpbXBsKSkpOworICAgIH0pOworfQorCiBJUEM6OkNvbm5lY3Rpb24mIFdlYlN0b3JhZ2VD
b25uZWN0aW9uOjpjb25uZWN0aW9uKCkKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3Jh
Z2VDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViU3RvcmFnZUNvbm5lY3Rpb24uaAppbmRleCAxYzBlNjYzNjliNTZlZGI3MGU5M2E4ODllMzI1
MDM1NjY2OTMzNmU1Li40Nzc0YTdiMDRiMWNjZDgwZjIxNDk5ODI2ZDU0Nzc0NjAzYzcxNjNmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3Rv
cmFnZUNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaApAQCAtMzEsNiArMzEsMTEgQEAgbmFtZXNwYWNl
IElQQyB7CiBjbGFzcyBDb25uZWN0aW9uOwogfQogCituYW1lc3BhY2UgV2ViQ29yZSB7Cit0ZW1w
bGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViU3RvcmFnZUNv
bm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFnZUNvbm5lY3Rpb24gewpAQCAt
NDAsNiArNDUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZvaWQgcGVyc2lzdGVkKFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5h
bDsKICAgICB2b2lkIHBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVj
dG9yeShXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+
JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigpOwogfTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMyNWQwMzEwNTgyLi5mNzkzYTAz
MDliZDIyNWFlYjM5MDQ4NGNiNzlhNjhjN2FmZWE0ZjNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMjEtMDktMjAgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAg
QWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHN0
b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3Rvcnkt
aGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0yMCAgQXl1bWkgS29qaW1hICA8
YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjgxMTAyPyk6
IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1sIGlzIGEgZmxha3kgdGltZW91
dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0MzdhNWUxNDdkN2RkYTQwZDFi
ZTliY2M3MTA5YTI2ODA1YWUyYWMuLmUwMDJkMWIzZmJkMzJmNTE4MGU1YjdhMTMxZTU1NWQ1MmE5
NGVhOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisy
MDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFk
ZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVs
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5k
b3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3Mt
aGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNv
bT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2VhOWU0N2MuLmU0YjNkY2E0MjU1
ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjAw
LDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9zLyBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBTa2lwIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lwIF0KIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFNraXAgXQorc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2YWN5LXJlcG9ydCB0ZXN0cyBy
ZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAtcHJpdmFjeS1yZXBvcnQvIFsg
U2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0YmI0MDA5Ni4uMWI0ZGM4YjZk
YTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVl
LW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsyLDUgQEAKIFBBU1Mgc2hvd0Rp
cmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgog
UEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRh
IFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIGlmcmFtZS4g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6
IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9O
OiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBz
aG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdp
bmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVK
RUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVj
dG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitGQUlMIG5hdmlnYXRvci5zdG9y
YWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3Qg
aW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRl
eGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0YjdiZTRkY2RhYWQ0YWI5MzA3
OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1NGY4MmYzNmVhMTMzN2UwYjAy
YTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5k
ZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDcg
KzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBw
ZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9u
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGVzIGFu
ZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRl
eGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBwZW5kaW5nIHRy
YW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRs
ZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxvYnMgaW4gSW5kZXhl
ZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJ
bmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVmY2M4ZDZiMjE5MzQzMmJhMGNj
ZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBiYTJjYjhkMzM1YzYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEw
IEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3RvcnkgaGFuZGxlcyBy
ZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFu
ZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJldHVybnMg
dHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUg
c2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVu
dHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2Ft
ZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRp
Y2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJu
cyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZv
ciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxlIGhhbmRs
ZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0
aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJl
dHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRy
eSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBl
M2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0Li4zOTVlY2E1NTRiZGQ3Yjhh
YjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJh
bWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMwZmI2Y2IyNjViODQzYjJiMGNl
ZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGExMmRlYTZjNDgyODgxNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5k
IG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2Vz
IHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRh
IFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwg
dG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYSB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBv
cmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8g
c2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBv
cnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwg
dG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBp
biBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNl
bmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5MGUyM2M0OTFmNTg4ZDFiNWI2
ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1Y2UxMTFkOWZjMmY3MDZhMGJi
YzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3Nh
Z2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBz
YW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZy
YW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3Jp
Z2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4
IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3YjUuLmE5Mzg0N2QwMDM1YjNi
ZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA0NTEwNjVlMzIyZGFm
ZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdmNGFmZmExOWMzODhlZTFjYzhk
MDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEs
NSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGVkaWNh
dGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2VydmljZSB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1ZDkzZWU1NzIxNTc5YmI5ZWZj
NTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3NDZkNGNlYjI5NGQ2NzBhN2Q1
YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5k
Ym94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2lu
ZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYwOTU5OTU4OTYzZjJmNGQ2YTk3
ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3ODFlZmM5N2IxZDBmZGM4ZmIx
ZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
YmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdv
cmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3MmZmM2Y1NzQxMmRkMDhlYzZh
NGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkwNGZkNjdiOTkxMWY3MDcwNmFk
OWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBz
ZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNhMGY5NDcxMGM4ZTNlMDVmOTVh
MDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNkMjZmMzkxN2UwNzY4NDBlNzFj
ZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJl
bW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDkg
QEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNo
b3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgp
IHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVjdG9yeSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBv
biBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hv
dWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUgb3B0
aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZSgpIHRvIHJl
bW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBv
biBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJl
bW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVj
dXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhlIHJlY3Vy
c2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5k
bGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1ODgyMzAuLjc4MTcxZmYwZTQ4
NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsx
LDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBm
b3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0
eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
Y3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRo
IGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZh
bHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3Jl
YXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZv
ciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkg
cmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEgZmlsZSBh
bHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBu
YW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxl
KCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRE
aXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0
aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhh
bmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0ZGM3MzkxYjA4M2ZkMDRhYmI4
MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2ExYzg2ZmE2N2E2ZmQ0Y2U4N2Y1
NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4g
ZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0
aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVI
YW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3Jl
YXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNh
bWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFu
ZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRo
IGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
Z2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxl
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRl
PXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhv
dXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUg
c2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRs
ZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNl
cGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Ig
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlv
bi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYxYzExMmRiOTlhNjk2YzAzZmI0
YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4MTIyOWQ3MmVlMDMwNmE0YzUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBk
b2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEBAYXN5
bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlv
biB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpdGVyYXRpb24g
d2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9l
c24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEBAYXN5bmNJdGVy
YXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdh
cmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggYWM2ZmMx
OTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgxNDcyMjViZGE4NDkyOGRjMzI2
NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKLUZBSUwgcmVtb3ZlRW50
cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB0byBy
ZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24g
YSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBlbXB0
eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5
KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkg
cmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1lbXB0eSBkaXJl
Y3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1v
dmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1
Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBiMWIzMzQwLi5mNWU2NTFiMWVm
MWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFJlc29sdmUg
cmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBw
YXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3QgYSBjaGls
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBSZXNvbHZlIHJldHVybnMg
ZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24tYXNj
aWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUg
cmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVI
YW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRl
bnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRw
cy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAzMzAxMGQ3MTg0NTIyYmIzNzA1
ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5MjNjNDQzOTdmNjQxYzY1ZGNh
ZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUt
Y3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2
ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmls
ZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMu
dGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQXR0
ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxl
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEwNGYxNWM3YWZhZGExYzE5N2E2
YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2MWE1NzggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdl
dEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCBnZXRG
aWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRp
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgZ2V0RmlsZSgpIHByb3Zp
ZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRpbWUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1OWU2ZGJlMGIwYzhlMmM2MGJh
Li5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZmZWUwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVG
aWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAK
IAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBBcnJheUJ1ZmZlciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0
aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBp
cGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21tYW5kIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0g
b2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBh
IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0
byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Y2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21t
YW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdp
dGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1MTU3YTVkYWNlZmMxMzVmYzA2
NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4NzlhNTRiNjY2NDhlOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdy
aXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMxICsx
LDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIHN0cmluZyB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8g
b2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2Fs
bGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0cmluZyBh
cHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3Jp
dGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBzdHJpbmcgYW5k
IGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBi
ZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRo
IHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdp
dGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJl
Y3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBh
dG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBhdG9taWMgY2hhbmdlcyBv
biBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZh
aWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6
IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkg
c3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBldmVuIGlm
IGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRh
dGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQYXJh
bXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB3
cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3
aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3Np
dGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBz
dHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQg
YmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBz
dHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBz
dHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHdpbmRvd3MgbGluZSBl
bmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdHlwZWQgYXJyYXkg
YnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczog
Y2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
YXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVy
YXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9t
aWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBl
dmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRhdGEgcGFy
YW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogc2VlayBt
aXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3VsZCByZWpl
Y3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2JkNjRjODQxOTU1OTI0NTIxMmYy
ZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2YwZGEzODk0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxl
U3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCB0
cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3aGVuIHBhcmVudCBk
aXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3JpdGFi
bGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGlu
Z0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3
aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjb21tYW5kcyBhcmUgcXVl
dWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKCkgZmFp
bHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1v
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3
aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6IGF0b21p
YyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250ZW50cyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhp
c3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6
ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwgc3Ry
ZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2ZjZTQ2Li5kOGRjZWJlNDg3MTAy
MzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1bGxzY3JlZW4vZnVsbC1zY3Jl
ZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMyMTMwOWJhZmYwNWU5NDk0MTFi
ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAK
K1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgcm9vdEhh
bmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBpcyAiZGlyZWN0b3J5IgorUEFT
UyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5kbGUua2luZCBpcyAiZGlyZWN0
b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBmaWxlSGFuZGxlLm5hbWUgaXMg
ImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIKK1BBU1MgaGFuZGxlTmFtZXMu
bGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRpciIKK1BBU1MgaGFuZGxlTmFt
ZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3RyaW5nKCkgaXMgIk5vdEZvdW5k
RXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRt
bCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxl
LWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4NTE0ZjQzNzYzNGVmZDRlMzBh
OGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApAQCAtMCwwICsxLDEwMCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rl
c2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFuZGxlLCBkaXJIYW5kbGUsIGZp
bGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3JlYXRlRXJyb3I7CisKK2Z1bmN0
aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9yKSB7CisgICAgICAgIHRlc3RG
YWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKworZnVuY3Rpb24g
Z2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpLnRo
ZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0gaGFuZGxlOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIsICIiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAg
ICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJy
b3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0
aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7CisgICAgZnJvbUhhbmRsZS5n
ZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0cnVlIH0pLnRoZW4oKGhhbmRs
ZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAgICAgIGNoZWNr
SWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9u
IGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sKKyAgICBoYW5kbGUxLmlzU2Ft
ZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICBpc1NhbWVFbnRyeSA9
IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1lRW50cnkiKTsKKyAgICAgICAg
Y3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24g
Y3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsKKyAgICBsZXQgb3B0aW9ucyA9
IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxlLmdldEZpbGVIYW5kbGUoImZp
bGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgZmlsZUhhbmRsZSA9IGhh
bmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLm5hbWUiLCAi
ZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUua2luZCIs
ICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9
PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGNyZWF0ZUVycm9yID0g
ZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3JlYXRlRXJyb3IudG9TdHJp
bmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4i
KTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZXNvbHZl
UGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhhbmRsZSkudGhlbigocmVzdWx0
KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZSgi
aGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJlbW92ZUVudHJ5KGRpckhhbmRs
ZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVz
dChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92ZUVudHJ5KGZyb21IYW5kbGUs
IG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5hbWUpLnRoZW4oKHJlc3VsdCkg
PT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyByZW1vdmVkLgorICAgICAgICBj
cmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgZ2V0RGlyZWN0
b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRvdy50ZXN0UnVubmVyIGlzIG5v
dCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438779</attachid>
            <date>2021-09-20 23:17:45 -0700</date>
            <delta_ts>2021-09-21 15:34:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920231744.patch</filename>
            <type>text/plain</type>
            <size>183827</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi44
M2UzYTZkYzU2NzkyZWQ4YWQ3MzBlMDY2YjZjZmM4NjkwZTZmMTI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgwIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMu
cHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAg
ICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSk6CisgICAg
ICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9z
ZWQpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1Nh
bWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6
OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5OjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29sdmUpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXRE
aXJlY3RvcnkpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFn
ZUNvbm5lY3Rpb24uaDoKKwogMjAyMS0wOS0xOSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVo
QGFwcGxlLmNvbT4KIAogICAgICAgICBUZWFjaCBgV2ViS2l0OjpjcmVhdGVTaGFyZWFibGVCaXRt
YXBgIHRvIHNuYXBzaG90IHZpZGVvIGVsZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBmNDEx
MzM0ZDZiNzE0NzM3MDU3MDZjZTA1ZjRkYzYxMDQ4N2NhNzdlLi41NWM1MDJkNWIwOTdjMzQyMjI5
NWE4ZTJmZDdmNTY4M2I1N2VkMDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTQwLDYgKzQwLDcg
QEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKICAgICBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAogICAgIE1vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKKyAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9T
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaAogCiAgICAgTW9kdWxlcy9nZW9sb2NhdGlv
bi9HZW9sb2NhdGlvbi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAK
aW5kZXggZDk1ZDY5MjQzZjUwNDA5ZGUzMjZmYWE5YWNmZTAwY2ExZjZkYTJlMS4uZGJiMDhhZDVj
NmY4OWU2YTYxM2NlZWY1M2VjNjI5OTZiYWE0MDRhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmNwcApAQCAtMjYsNDEgKzI2LDY0IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgogCisjaW5jbHVkZSAi
RmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5o
IgorI2luY2x1ZGUgIkpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgorI2luY2x1ZGUgIkpT
RmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIAotUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU+IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQorUmVm
PEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNy
ZWF0ZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKIHsK
LSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFdURk1v
dmUobmFtZSkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlKFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpKTsKIH0KIAotRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lKQot
ICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpEaXJlY3Rvcnks
IFdURk1vdmUobmFtZSkpCitGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBp
bXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpEaXJl
Y3RvcnksIFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpCiB7CiB9CiAKLXZvaWQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShjb25zdCBTdHJpbmcmLCBzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVPcHRpb25zPiwgRE9NUHJv
bWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlz
ZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShTdHJpbmcm
JiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVP
cHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0
ZW1GaWxlSGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlv
biB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7Cisg
ICAgaW1wbCgpLmdldEZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3Nhcnks
IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAg
ICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2Uu
cmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCi12b2lk
IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJp
bmcmLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldERpcmVjdG9y
eU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6
OmdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OkdldERpcmVjdG9yeU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21p
c2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJv
bWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJv
ciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0g
b3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXREaXJlY3Rv
cnlIYW5kbGUoV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3NhcnksIFtwcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3Vs
dC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQu
cmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCi12b2lkIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8Rmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6UmVtb3ZlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJl
ZDx2b2lkPiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92
ZUVudHJ5KFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZTo6UmVtb3ZlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYg
cHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5
ID0gb3B0aW9ucyA/IG9wdGlvbnMtPnJlY3Vyc2l2ZSA6IGZhbHNlOworICAgIGltcGwoKS5yZW1v
dmVFbnRyeShXVEZNb3ZlKG5hbWUpLCBkZWxldGVSZWN1cnNpdmVseSwgW3Byb21pc2UgPSBXVEZN
b3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2Uuc2V0
dGxlKFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTo6cmVzb2x2ZShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJvbWlzZSkKK3ZvaWQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUsIERP
TVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2UpCiB7
Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3Qg
aW1wbGVtZW50ZWQiX3MgfSk7CisgICAgaW1wbCgpLnJlc29sdmUoaGFuZGxlLmltcGwoKSwgW3By
b21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAg
IGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNv
bHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCmluZGV4
IDRhZjFkOWRiNzI0Mjg0OTI0NzQyOTFhZGVkNDhjOTQ3ZjQzNDUwMmIuLjdjNDdlNzU1ZWMwYTk2
ZDBiZjI1OWVlNTQzYzI1ZTQ2ZmFmMTA0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuaApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNz
IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwogCi1jbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
IDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgeworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpOwogcHVibGljOgogICAgIHN0cnVj
dCBHZXRGaWxlT3B0aW9ucyB7CkBAIC00NiwxNCArNDYsMTggQEAgcHVibGljOgogICAgICAgICBi
b29sIHJlY3Vyc2l2ZSB7IGZhbHNlIH07CiAgICAgfTsKIAotICAgIHN0YXRpYyBSZWY8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmKTsKLSAgICB2b2lkIGdldEZpbGVI
YW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldEZpbGVPcHRpb25zPiwg
RE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYp
OwotICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpv
cHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7Ci0gICAgdm9pZCByZW1vdmVFbnRy
eShjb25zdCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8UmVtb3ZlT3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDx2b2lkPiYmKTsKLSAgICB2b2lkIHJlc29sdmUoY29uc3QgRmlsZVN5c3Rl
bUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYm
KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKKyAgICB2
b2lkIGdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBzdGQ6
Om9wdGlvbmFsPEdldERpcmVjdG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50
ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKTsKKyAgICB2b2lkIHJlbW92ZUVu
dHJ5KFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8UmVtb3ZlT3B0aW9ucz4sIERPTVByb21p
c2VEZWZlcnJlZDx2b2lkPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmKTsKIAogcHJp
dmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmKTsK
KyAgICBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpCisg
ICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhh
bmRsZSkgeyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxl
OjpLaW5kOjpEaXJlY3Rvcnk7IH0KK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
RmlsZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCmluZGV4IDllZGMyMDRlMTdlZTEzMzRmMzA3NzBlMmJh
NzQ1MDU5ZGE1ODcwYTIuLmYxNWUwMTFkNmY2M2U1NzAzOWM2ZTk0NjI3ZWEyNWFkMDlmMGUxMjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAKKyNp
bmNsdWRlICJGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURl
ZmVycmVkLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KIApAQCAtMzMsMTMg
KzM0LDEzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsKIAotUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBG
aWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3Rl
bUZpbGVIYW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwg
UmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgRmlsZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIFdURk1vdmUo
aW1wbCkpKTsKIH0KIAotRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQ6OkZpbGUsIFdURk1vdmUobmFtZSkpCitGaWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5
c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYm
IGltcGwpCisgICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkZp
bGUsIFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRs
ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLmgKaW5kZXggMGE3ZmE0ZTM4YjhhNTA0ODBmM2UzMjI3OWRjMzk5MWMwNGUzY2I5
MS4uNDgyOWJiMjQxNzc5Yzc1NGVhN2E1ODdhZTZkMWExZTkyNzJkZDMxMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgKQEAgLTM0LDExICszNCwxNSBAQCBjbGFzcyBGaWxlOwogY2xhc3Mg
RmlsZVN5c3RlbUZpbGVIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAg
ICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmKTsK
KyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVh
dGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiAgICAgdm9pZCBnZXRG
aWxlKERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZT4+JiYpOwogCiBwcml2YXRl
OgotICAgIGV4cGxpY2l0IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmKTsKKyAgICBGaWxl
U3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5
cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKSB7IHJldHVybiBoYW5k
bGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkZpbGU7IH0KK1NQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAppbmRleCAy
MTIxYjFjYzI1MTUxOGJiOTVkZjA2OTQxMWMyMTEyYjYwODUwZmJmLi5iMDc0NDhjZmU1YTYwNmQw
YWJlZDUwMzRiZDI0ZmE5ZGI2MjA4YTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCkBAIC0z
MywxNSArMzMsMjMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEX0lNUEwoRmlsZVN5c3RlbUhhbmRsZSk7CiAKLUZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0
ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lKQorRmls
ZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kIGtp
bmQsIFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogICAg
IDogbV9raW5kKGtpbmQpCiAgICAgLCBtX25hbWUoV1RGTW92ZShuYW1lKSkKKyAgICAsIG1faW1w
bChXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVu
dHJ5KGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVh
bj4mJiBwcm9taXNlKQorRmlsZVN5c3RlbUhhbmRsZTo6fkZpbGVTeXN0ZW1IYW5kbGUoKSA9IGRl
ZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhh
bmRsZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQog
ewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90
IGltcGxlbWVudGVkIl9zIH0pOworICAgIGlmIChtX2tpbmQgIT0gaGFuZGxlLmtpbmQoKSB8fCBt
X25hbWUgIT0gaGFuZGxlLm5hbWUoKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVzb2x2ZShm
YWxzZSk7CisKKyAgICBtX2ltcGwtPmlzU2FtZUVudHJ5KGhhbmRsZS5pbXBsKCksIFtwcm9taXNl
ID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBwcm9t
aXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1h
Y2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAppbmRleCA3NTRlNDk0MTliYjYzN2YxN2YwN2Zk
ODAzMTk5ZjIyMTgyNzY5OTdhLi42NWEzZmQ2N2VhZmFhMGZlMDQ3NzBmNTU5NGEwNTgzNDJmZTky
ZjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKQEAgLTMxLDI5ICszMSwzMiBAQAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRE9NUHJvbWlzZURlZmVycmVk
OworCitjbGFzcyBGaWxlU3lzdGVtSGFuZGxlSW1wbDsKIGVudW0gY2xhc3MgUGVybWlzc2lvblN0
YXRlIDogdWludDhfdDsKIAogY2xhc3MgRmlsZVN5c3RlbUhhbmRsZSA6IHB1YmxpYyBSZWZDb3Vu
dGVkPEZpbGVTeXN0ZW1IYW5kbGU+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEZpbGVT
eXN0ZW1IYW5kbGUpOwogcHVibGljOgorICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUoKTsK
KwogICAgIGVudW0gY2xhc3MgS2luZCA6IHVpbnQ4X3QgewogICAgICAgICBGaWxlLAogICAgICAg
ICBEaXJlY3RvcnkKICAgICB9OwotCi0gICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZSgpID0g
ZGVmYXVsdDsKLQogICAgIEtpbmQga2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQogICAg
IGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQorICAgIEZpbGVT
eXN0ZW1IYW5kbGVJbXBsJiBpbXBsKCkgeyByZXR1cm4gbV9pbXBsLmdldCgpOyB9CiAKLSAgICB2
b2lkIGlzU2FtZUVudHJ5KGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJik7CisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxl
JiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOwogCiBwcm90ZWN0ZWQ6Ci0gICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lKTsKKyAgICBGaWxlU3lzdGVtSGFu
ZGxlKEtpbmQsIFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiAK
IHByaXZhdGU6CiAgICAgS2luZCBtX2tpbmQgeyBLaW5kOjpGaWxlIH07CiAgICAgU3RyaW5nIG1f
bmFtZTsKKyAgICBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+IG1faW1wbDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbAppbmRleCAyMDhlNzQ1Y2Mz
YmZjNGM3OTc2ZWMwMjhlMWI0ZGQ2MmFhZmQwMzA4Li45YmQwMTAwMTFiZjNjNWM4NzdkZTY4M2Q2
YWE4MTZkYmVhYTEwZmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCkBAIC0yOSw2ICsyOSw3
IEBAIGVudW0gRmlsZVN5c3RlbUhhbmRsZUtpbmQgewogfTsKIAogWworICAgIEN1c3RvbVRvSlNP
YmplY3QsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlciksCiAgICAgRW5hYmxlZEJ5U2V0dGlu
Zz1GaWxlU3lzdGVtQWNjZXNzLAogICAgIFNlY3VyZUNvbnRleHQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGVJbXBsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMjk5ZTQyZjNkM2E0MTk4NTlkOTEwYzU0NzA1MDhhZjdkMmU5
Njk3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7
CitjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBF
eGNlcHRpb25PcjsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGwgOiBwdWJsaWMgUmVmQ291
bnRlZDxGaWxlU3lzdGVtSGFuZGxlSW1wbD4geworcHVibGljOgorICAgIHZpcnR1YWwgfkZpbGVT
eXN0ZW1IYW5kbGVJbXBsKCkgeyB9CisgICAgdmlydHVhbCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90
PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaXNTYW1l
RW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2Vw
dGlvbk9yPGJvb2w+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGdldEZpbGVIYW5kbGUo
U3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBj
cmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IHJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgcmVjdXJzaXZlLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4
Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJikgPSAwOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVt
bXlTdG9yYWdlUHJvdmlkZXIuaAppbmRleCA5MTQ0YTNkN2EzNDRhMGM4YjMxZjk0YjY2YWYwODc4
NzJlNzEwYzZhLi5kNzBlY2YzZjBlYWZjYTRiZWU2ODEzODZiNWNhNjQ5YWFhNTQ2MTExIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlk
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJv
dmlkZXIuaApAQCAtNTEsNiArNTEsMTEgQEAgcHJpdmF0ZToKICAgICAgICAgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisgICAgICAgIAorICAgICAg
ICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoQ2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7CisgICAgICAgIH0KICAg
ICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0aW9uKCkgZmluYWwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVj
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9u
LmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3NTUzMy4uNjY4OGY0
Yjg2ODQ4MGZkNTdhZjQ4OWMxMTE5MWMwNzYwZTA1ZjY0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTI1LDExICsyNSwx
NCBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBsYXRlPHR5cGVuYW1l
PiBjbGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3Rv
cmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewpA
QCAtMzcsNiArNDAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+U3RvcmFnZUNvbm5lY3Rpb24o
KSA9IGRlZmF1bHQ7CiAgICAgdmlydHVhbCB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBw
ZXJzaXN0KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoQ2xpZW50T3JpZ2lu
JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAK
aW5kZXggZmI1NGY5ODBhMzU1MDJiYzE2MzMyZjc3N2YxODJlYmFmMTU3MzA5ZS4uN2MxNjg5MDY1
N2UwY2IxYzIyMWIxMDE3NTRiM2VjM2IzNGEyOGUwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNyw4ICsyNywxMCBAQAog
I2luY2x1ZGUgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAKICNpbmNsdWRlICJDbGllbnRPcmlnaW4uaCIK
KyNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgorI2luY2x1ZGUgIkpT
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgogI2luY2x1ZGUgIk5hdmlnYXRvckJhc2UuaCIK
ICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxp
bmVzLmg+CkBAIC00Nyw1MyArNDksNjggQEAgU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VNYW5hZ2Vy
KE5hdmlnYXRvckJhc2UmIG5hdmlnYXRvcikKIHsKIH0KIAotdm9pZCBTdG9yYWdlTWFuYWdlcjo6
cGVyc2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCitzdHJ1
Y3QgU3RvcmFnZU1hbmFnZXI6OkNvbm5lY3Rpb25JbmZvIHsKKyAgICBTdG9yYWdlQ29ubmVjdGlv
biYgY29ubmVjdGlvbjsKKyAgICBDbGllbnRPcmlnaW4gb3JpZ2luOworfTsKKworRXhjZXB0aW9u
T3I8U3RvcmFnZU1hbmFnZXI6OkNvbm5lY3Rpb25JbmZvPiBTdG9yYWdlTWFuYWdlcjo6Y29ubmVj
dGlvbkluZm8oKQogewogICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVybiBwcm9t
aXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2Vz
IG5vdCBleGlzdCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH07CiAKICAgICBhdXRvIGNvbnRl
eHQgPSBtX25hdmlnYXRvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwogICAgIGlmICghY29u
dGV4dCkKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbnRleHQgaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29udGV4dCBpcyBpbnZhbGlkIl9zIH07
CiAKKyAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOworICAgIGlm
ICghb3JpZ2luKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3Is
ICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9OworICAgIAogICAgIGF1dG8gY29ubmVjdGlvbiA9IGNv
bnRleHQtPnN0b3JhZ2VDb25uZWN0aW9uKCk7CiAgICAgaWYgKCFjb25uZWN0aW9uKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJU
aGUgY29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH0pOworICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJDb25uZWN0aW9uIGlzIGludmFsaWQiX3MgfTsKIAotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOworICAgIHJldHVybiBDb25uZWN0aW9u
SW5mbyB7ICpjb25uZWN0aW9uLCB7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRhdGEoKSwgb3JpZ2lu
LT5kYXRhKCkgfSB9OworfQorCit2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0ZWQoRE9NUHJv
bWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK3sKKyAgICBhdXRvIGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9u
SW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0g
ICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNpc3RlZCh7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRh
dGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29s
IHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5l
Y3Rpb25JbmZvLmNvbm5lY3Rpb24ucGVyc2lzdGVkKFdURk1vdmUoY29ubmVjdGlvbkluZm8ub3Jp
Z2luKSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJs
ZSB7CiAgICAgICAgIHByb21pc2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2
b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFu
PiYmIHByb21pc2UpCiB7Ci0gICAgaWYgKCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRv
ZXMgbm90IGV4aXN0Il9zIH0pOworICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9
IGNvbm5lY3Rpb25JbmZvKCk7CisgICAgaWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFz
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5m
b09yRXhjZXB0aW9uLnJlbGVhc2VFeGNlcHRpb24oKSk7CiAKLSAgICBhdXRvIGNvbnRleHQgPSBt
X25hdmlnYXRvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwotICAgIGlmICghY29udGV4dCkK
LSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiVGhlIGNvbnRleHQgaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8gY29ubmVjdGlv
biA9IGNvbnRleHQtPnN0b3JhZ2VDb25uZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uKQot
ICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJy
b3IsICJUaGUgY29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgYXV0byogb3JpZ2lu
ID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBpZiAoIW9yaWdpbikKLSAgICAgICAg
cmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3Jp
Z2luIGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdCh7
IGNvbnRleHQtPnRvcE9yaWdpbigpLmRhdGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2Ug
PSBXVEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBj
b25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZh
bHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24ucGVyc2lzdChXVEZN
b3ZlKGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lz
dGVkKTsKICAgICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbUFjY2Vz
c0dldERpcmVjdG9yeShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcmV0dXJuIHByb21pc2UucmVqZWN0
KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOwor
ICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25JbmZvKCk7Cisg
ICAgaWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFzRXhjZXB0aW9uKCkpCisgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VF
eGNlcHRpb24oKSk7CisKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvID0gY29ubmVjdGlvbkluZm9P
ckV4Y2VwdGlvbi5yZWxlYXNlUmV0dXJuVmFsdWUoKTsKKyAgICByZXR1cm4gY29ubmVjdGlvbklu
Zm8uY29ubmVjdGlvbi5maWxlU3lzdGVtR2V0RGlyZWN0b3J5KFdURk1vdmUoY29ubmVjdGlvbklu
Zm8ub3JpZ2luKSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0
YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBy
ZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAg
ICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggNDVkN2I4YzE2YWRhNWY0MDU4NDg3Nzgw
NTg4NTc4ZmRjN2I3ZjFhOC4uZDcxZGE1N2UyNzJiNGZjZTA4Mjk1Mjg0YTcyN2ZlMmIyNDk4N2Uy
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2Vy
LmgKQEAgLTMxLDkgKzMxLDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKIGNsYXNzIE5hdmlnYXRvckJhc2U7CiB0ZW1wbGF0ZTx0
eXBlbmFtZT4gY2xhc3MgRE9NUHJvbWlzZURlZmVycmVkOwotY2xhc3MgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIAogY2xh
c3MgU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlTWFuYWdlcj4gewog
ICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU3RvcmFnZU1hbmFnZXIpOwpAQCAtNDUsNyArNDYs
OCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgU3RvcmFnZU1hbmFnZXIoTmF2
aWdhdG9yQmFzZSYpOwotCisgICAgc3RydWN0IENvbm5lY3Rpb25JbmZvOworICAgIEV4Y2VwdGlv
bk9yPENvbm5lY3Rpb25JbmZvPiBjb25uZWN0aW9uSW5mbygpOwogICAgIFdlYWtQdHI8TmF2aWdh
dG9yQmFzZT4gbV9uYXZpZ2F0b3I7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGQ4MGJkMzJjZTcw
ZDZmZTZmMTViOTlhMjllZWU4NTI1OTc2ZGJhNmEuLjUyZTFhYmFhNDkwODM1YzRiYzRhYzc0MDI3
ZDNhZGMwNTVhOWUzYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC00ODgsNiArNDg4LDcgQEAgYmluZGlu
Z3MvanMvSlNFeGVjU3RhdGUuY3BwCiBiaW5kaW5ncy9qcy9KU0V4dGVuZGFibGVNZXNzYWdlRXZl
bnRDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0ZldGNoRXZlbnRDdXN0b20uY3BwCiBiaW5kaW5n
cy9qcy9KU0ZpbGVTeXN0ZW1FbnRyeUN1c3RvbS5jcHAKK2JpbmRpbmdzL2pzL0pTRmlsZVN5c3Rl
bUhhbmRsZUN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTEFsbENvbGxlY3Rpb25DdXN0b20u
Y3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcAogYmluZGluZ3Mv
anMvSlNIVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA3MGIwNDA5YjNlZjE2ZmEwYWQ4ZmY1
YzhmZmM1YmFhNTNjOTYxMDNhLi42MDE3Mjg5NzFkZDRkNDBkZjRmNDI1NjBkNjM4ODdlMGMxMTBl
MjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC0yODE4LDYgKzI4MTgsNyBAQAogCQk5MzBBQUM5QTI1MEVCODQ5MDAxM0RBOUYg
LyogQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTMwQUFDOTgyNTBFQjgxNzAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzBB
QUM5RjI1MEVENDA5MDAxM0RBOUYgLyogSlNDU1NDb25kaXRpb25SdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUM5RDI1MEVENDA5MDAxM0RB
OUYgLyogSlNDU1NDb25kaXRpb25SdWxlLmggKi87IH07CiAJCTkzMEFBQ0EyMjUwRUQ0MTEwMDEz
REE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDQTAyNTBFRDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3JvdXBp
bmdSdWxlLmggKi87IH07CisJCTkzMTJCQUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVt
SGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMxNTNCREEx
NDE4MUY3QTAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZUAyeC5wbmcgaW4gUmVzb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkQ5MTQxODFGN0EwMEZDRjVCRSAv
KiBtaXNzaW5nSW1hZ2VAMngucG5nICovOyB9OwogCQk5MzE1M0JEQzE0MTk1OUJDMDBGQ0Y1QkUg
LyogdGV4dEFyZWFSZXNpemVDb3JuZXIucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEQjE0MTk1OUJCMDBGQ0Y1QkUgLyogdGV4dEFyZWFS
ZXNpemVDb3JuZXIucG5nICovOyB9OwogCQk5MzE1M0JFMjE0MTk1QTU3MDBGQ0Y1QkUgLyogbWlz
c2luZ0ltYWdlLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTMxNTNCRTExNDE5NUE1NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgKi87IH07
CkBAIC0yODcwLDkgKzI4NzEsOSBAQAogCQk5MzQzQ0I4MjEyRjI1RTUxMDAzM0M1RUUgLyogVGV4
dENvZGVjVVRGOC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTM0M0NCODAxMkYyNUU1MTAwMzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCAqLzsgfTsKIAkJ
OTM0NDJDOUUwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ0MkM5RDBEMkIz
MzVDMDAzMzhGRjkgLyogSFRNTFRhYmxlUm93c0NvbGxlY3Rpb24uaCAqLzsgfTsKIAkJOTM0NDNF
ODUyNkU5OTVCQjAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDNFN0QyNkU4
QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oICovOyB9Owot
CQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQy
NkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgfTsKLQkJ
OTM0NDNFODcyNkU5OTVDMDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJENjI2REQ2MjVD
MDA1M0IzREIgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCAqLzsgfTsKLQkJOTM0NDNFODgyNkU5
OTVDNDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBGaWxl
U3lzdGVtSGFuZGxlLmggKi87IH07CisJCTkzNDQzRTg2MjZFOTk1QkQwMDU4NTM4RiAvKiBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzJDOUJENDI2REQ2MjVBMDA1M0IzREIgLyogRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYy
NkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM0NDNFODgyNkU5OTVDNDAwNTg1
MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFu
ZGxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTM0OTA3RTQxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5MDdFMzEyNUJCQkM4MDA3
RjIzQTAgLyogR3JhcGhpY3NDb250ZXh0Q0cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzQ5NTBDRDI1Mzk0MzYxMDA5OUYxNzEgLyogU3BlZWNo
UmVjb2duaXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzNDk1MEIxMjUzOTQzNDgwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbi5oICovOyB9
OwogCQk5MzQ5NTBDRTI1Mzk0MzY1MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5h
dGl2ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0
OTUwQkMyNTM5NDM0RTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCAq
LzsgfTsKQEAgLTExNjk1LDYgKzExNjk2LDggQEAKIAkJOTMxNkRERjgyNDBDNjRCMzAwOTM0MEFB
IC8qIFNpbXBsZVJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbXBs
ZVJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMTZEREZBMjQwQzY0QjMw
MDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTaW1wbGVSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
MTZEREZFMjQwQzY0RjgwMDkzNDBBQSAvKiBCb3VuZGFyeVBvaW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEJvdW5kYXJ5UG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1IYW5kbGVJbXBs
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUExQkREMjZGN0VEMDkwMDgxQTdF
NSAvKiBKU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNG
aWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTMxQUUzQjgxRkI4MEVBRTAwRjVFRkIyIC8qIEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNWYWx1ZUluV3JhcHBlZE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzFCQ0M2MDExMjRERkNCMDBCRTcwREQgLyogTWVkaWFDYW5TdGFydExpc3Rl
bmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ2FuU3RhcnRMaXN0
ZW5lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzFDQkQwNjE2MUE0NEU5MDBF
NEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0yMzAzNiw2ICsyMzAzOSw3IEBACiAJCQkJNDZCNjNGNkIxQzZFOENERjAwMkU5
MTRCIC8qIEpTRXZlbnRUYXJnZXRDdXN0b20uaCAqLywKIAkJCQk0MTMxRjNCMTFGOTU1MjgxMDA1
OTk5NUEgLyogSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcCAqLywKIAkJCQk4MzVCNjgwRTFGNTQ4QkRF
MDA3MUY3RjYgLyogSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwICovLAorCQkJCTkzMUExQkRE
MjZGN0VEMDkwMDgxQTdFNSAvKiBKU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwICovLAogCQkJ
CTg0QkJFNTQ4MjU5N0U3RjEwMEFBOEYyOCAvKiBKU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9tLmNw
cCAqLywKIAkJCQk2RTU3NkJDMzI0RUI1MDlDMDA5NEQ0QUEgLyogSlNIVE1MQ2FudmFzRWxlbWVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDQkFEM0EwQzE4QkZGODAwQ0U4OTBGIC8qIEpTSFRNTENv
bGxlY3Rpb25DdXN0b20uY3BwICovLApAQCAtMjMzNjgsNiArMjMzNzIsNyBAQAogCQkJCTkzMkM5
QkQwMjZERDYyNTUwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFuZGxlLmNwcCAqLywKIAkJCQk5MzJD
OUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovLAogCQkJCTkzMkM5
QkQ5MjZERDYyNjAwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFuZGxlLmlkbCAqLywKKwkJCQk5MzFB
MDc1ODI2RjFCNDRGMDA0NDc0Q0QgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCAqLywKIAkJCQk5
MzQ0M0U3QjI2RThBNkJDMDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXIrRmlsZVN5c3RlbUFjY2Vz
cy5pZGwgKi8sCiAJCQkJOTM0NDNFN0QyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2Vy
RmlsZVN5c3RlbUFjY2Vzcy5oICovLAogCQkJKTsKQEAgLTMyNDQ0LDYgKzMyNDQ5LDcgQEAKIAkJ
CQk4M0ZCMzM3NTFGNTA4QTVCMDA5ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRyeS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOTM0NDNFODcyNkU5OTVDMDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzQ0M0U4ODI2RTk5NUM0MDA1ODUzOEYgLyog
RmlsZVN5c3RlbUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDkyNkYzQUM5QTAw
RkRERjVGIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVF
QjY5RjBFODFEQUVCMDBCMjU5NjUgLyogRmlsbExheWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3
MTJCRTQ4MzFGRTg2NUREMDAyMDMxQ0MgLyogRmlsbE1vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTg0NUU3MkY4MEZEMjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCBpbiBIZWFkZXJzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYTJjZGVlMTU2NzU2MjQyM2JhN2U2MTg1YTEwYTc2NzI3ZTY1
NzhkZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmls
ZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHAKQEAgLTAsMCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1IYW5kbGUuaCIKKworI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RmlsZUhhbmRsZS5oIgorI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2luY2x1ZGUgIkpTRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgorI2luY2x1ZGUgIkpTRmlsZVN5c3RlbUZpbGVIYW5k
bGUuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkpT
R2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpCit7CisgICAgcmV0dXJuIHdyYXAo
bGV4aWNhbEdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LCBoYW5kbGUpOworfQorCitKU0M6OkpT
VmFsdWUgdG9KU05ld2x5Q3JlYXRlZChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPEZpbGVTeXN0ZW1IYW5kbGU+JiYgaGFuZGxlKQorewor
ICAgIGlmIChpczxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPihoYW5kbGUuZ2V0KCkpKQorICAg
ICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPihnbG9i
YWxPYmplY3QsIFdURk1vdmUoaGFuZGxlKSk7CisKKyAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxG
aWxlU3lzdGVtRmlsZUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworfQor
Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmgKaW5kZXggOTYzOTBhMDgwZTYxMTQ5ZGMxNmNiODZlYjlhOTA4ZWFiMGUx
OTZiNi4uODQ2ZTIzODUzMTA4MmNiMTJmNGMwMWJiMzA4NzQ4MmFmNjk2ZWQwNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmgKQEAgLTI2LDYgKzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiTW9kdWxlU2Ny
aXB0TG9hZGVyLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiU2NyaXB0QnVmZmVyLmgiCiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0RmV0Y2hlci5oIgog
I2luY2x1ZGUgIldvcmtlclNjcmlwdExvYWRlckNsaWVudC5oIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKaW5kZXggN2M1OGE0NmMyNDIw
NTgyMGFiMDEwOWMxZTUzY2M2ZGVhZGJlYmY4OC4uYTc3NzRlZGM0ZWYyZDkwZmRlZDBlMDQyOGZj
YTc0ODU0Zjk1ZWQ0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJKb2IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckpvYi5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpZiBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckpvYkNsaWVu
dC5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JEYXRhLmgiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5o
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44ZmMzNTJlODRiNTQyMzliYTI4NmU0NjE0YWYzODI3M2Y5MTZh
YTJjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApAQCAtMCwwICsxLDcyIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNp
bmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBj
bGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhfdCB7CisgICAgRW1wdHksCisgICAg
RmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1lLAorICAgIEludmFsaWRNb2RpZmljYXRpb24s
CisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25vd24KK307CisKK2lubGluZSBXZWJDb3JlOjpF
eGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
ciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9yKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRp
b25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNv
ZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNv
ZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhj
ZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1W
YWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSwKKyAgICAgICAgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQsCisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gsCisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgorICAgID47Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzMTQ0ZTk5
YmEyNDI1YzU4MzNmZDUzNGE0YWMyOWZjNzBjNWI4YzQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUu
Y3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lz
dGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgi
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgT1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFy
IHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0
b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBl
LCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSkKKyAgICA6IG1faWRlbnRp
ZmllcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI6OmdlbmVyYXRlKCkpCisgICAg
LCBtX21hbmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAg
ICAsIG1fcGF0aChwYXRoKQorICAgICwgbV9uYW1lKG5hbWUpCit7CisgICAgQVNTRVJUKCFtX3Bh
dGguaXNFbXB0eSgpKTsKKworICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjpt
YWtlQWxsRGlyZWN0b3JpZXMobV9wYXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVt
OjpmaWxlRXhpc3RzKG1fcGF0aCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbTo6b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Bl
bk1vZGU6OldyaXRlKTsKKyAgICAgICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7Cisg
ICAgfQorfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIHBhdGggPSBt
X21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlv
bkhhbmRsZXIobV9wYXRoID09IHBhdGgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgVHlw
ZSB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAobV90eXBlICE9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJl
Y3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaCk7CisKKyAgICBpZiAoIW1fbWFuYWdl
cikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0aHVi
LmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFsaWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUgPT0g
Ii4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1lLmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpJbnZhbGlkTmFtZSk7CisKKyAgICBhdXRvIHBhdGggPSBGaWxlU3lzdGVtOjpw
YXRoQnlBcHBlbmRpbmdDb21wb25lbnQobV9wYXRoLCBuYW1lKTsKKyAgICBtX21hbmFnZXItPmNy
ZWF0ZUhhbmRsZShjb25uZWN0aW9uLCB0eXBlLCBwYXRoLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29u
c3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVx
dWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RmlsZSwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICByZXF1ZXN0Q3JlYXRlSGFu
ZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3Rvcnks
IG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmIChtX3R5cGUgIT0gVHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaCk7CisKKyAgICBhdXRvIHBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21w
b25lbnQobV9wYXRoLCBuYW1lKTsKKyAgICBhdXRvIHR5cGUgPSBGaWxlU3lzdGVtOjpmaWxlVHlw
ZShwYXRoKTsKKyAgICBpZiAoIXR5cGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihmYWxzZSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kKTsKKworICAgIHN3
aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVn
dWxhcjoKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0
ZUZpbGUocGF0aCksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKyAgICBjYXNlIEZp
bGVTeXN0ZW06OkZpbGVUeXBlOjpEaXJlY3Rvcnk6CisgICAgICAgIGlmICghZGVsZXRlUmVjdXJz
aXZlbHkpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbTo6
ZGVsZXRlRW1wdHlEaXJlY3RvcnkocGF0aCksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5
KTsKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0ZU5v
bkVtcHR5RGlyZWN0b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7Cisg
ICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5
KTsKKyAgICB9Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29sdmUoRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9tYW5hZ2VyKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gcGF0aCA9IG1fbWFuYWdlci0+Z2V0UGF0
aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVu
a25vd24pOworCisgICAgaWYgKCFwYXRoLnN0YXJ0c1dpdGgobV9wYXRoKSkKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RW1wdHkpOworCisgICAgYXV0byByZXN0UGF0aCA9IHBhdGguc3Vic3RyaW5nKG1f
cGF0aC5sZW5ndGgoKSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIocmVzdFBhdGguc3BsaXQocGF0
aFNlcGFyYXRvciksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKK30KKworfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5
YmZjOTc4ZDBiNzUzY2ZjOTczNDk5MmU3MWRmNzcwY2U0ZTJiOGUKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLmgiCisKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworZW51bSBjbGFzcyBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhfdDsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUsIFdl
YWtQdHJGYWN0b3J5SW5pdGlhbGl6YXRpb246OkVhZ2VyPiB7CisgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitwdWJsaWM6CisgICAgZW51bSBjbGFzcyBUeXBlIDogYm9vbCB7IEZpbGUsIERp
cmVjdG9yeSB9OworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlciYsIFR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBuYW1lKTsK
KworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgY29uc3QgU3RyaW5nJiBwYXRoKCkgY29u
c3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOwor
ICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vy
c2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKK3ByaXZhdGU6CisgICAgdm9pZCByZXF1
ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFR5cGUsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBt
X2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFu
YWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBt
X25hbWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEy
NjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5o
CkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
PHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Uy
MzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIK
KworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
JiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikp
OworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsK
K30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFu
ZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAg
IEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVz
LnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hh
bmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFuZGxlLmdldCgpOworCisg
ICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2Fm
ZjZjMTFjZWYxM2JjM2NjN2YwZjI4ODAyMzI1MDdiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1
YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCBy
ZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdl
dEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgor
ICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTAz
NGRhNTBhYmZmMWYwOWY3MmE0ZTI3MDlkYmY1ZDZiMTkzMGYxZgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuY3BwCkBAIC0wLDAgKzEsOTkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3RyeSkKKyAgICA6IG1fcGF0
aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9yZWdpc3RyeShyZWdpc3RyeSkKK3sKK30KKworRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCkKK3sKKyAg
ICBmb3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVn
aXN0cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24s
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8g
ZmlsZUV4aXN0cyA9IEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVh
dGVJZk5lY2Vzc2FyeSAmJiAhZmlsZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5k
KTsKKworICAgIGlmIChmaWxlRXhpc3RzKSB7CisgICAgICAgIGF1dG8gZXhpc3RpbmdGaWxlVHlw
ZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAgICAgICBpZiAoIWV4aXN0aW5nRmls
ZVR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgICAgICBhdXRvIGV4aXN0
aW5nSGFuZGxlVHlwZSA9IChleGlzdGluZ0ZpbGVUeXBlLnZhbHVlKCkgPT0gRmlsZVN5c3RlbTo6
RmlsZVR5cGU6OlJlZ3VsYXIpID8gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUg
OiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OworICAgICAgICBpZiAo
ZXhpc3RpbmdIYW5kbGVUeXBlICE9IHR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0
Y2gpOworICAgIH0KKworICAgIGF1dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZT4oKnRoaXMsIHR5cGUsIHBhdGgsIG5hbWUpOworICAgIGF1dG8gbmV3SGFu
ZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRpZmllcigpOworICAgIG1faGFuZGxlc0J5
Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbi51bmlxdWVJRCgpLCBbJl0geworICAgICAgICBt
X2Nvbm5lY3Rpb25zLmFkZChjb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3ItPnZh
bHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVySGFu
ZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5hZGQo
bmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBjb21wbGV0aW9u
SGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0
eSk7Cit9CisKK2NvbnN0IFN0cmluZyYgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRo
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGF1
dG8gaGFuZGxlID0gbV9oYW5kbGVzLmZpbmQoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIGhhbmRs
ZSA9PSBtX2hhbmRsZXMuZW5kKCkgPyBlbXB0eVN0cmluZygpIDogaGFuZGxlLT52YWx1ZS0+cGF0
aCgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3Nl
ZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKGF1dG8gaGFuZGxlcyA9
IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQoKSk7IGhhbmRs
ZXMgIT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKSB7CisgICAgICAgIGZvciAoYXV0byBo
YW5kbGVJZGVudGlmaWVyIDogaGFuZGxlcy0+dmFsdWUpIHsKKyAgICAgICAgICAgIG1faGFuZGxl
cy5yZW1vdmUoaGFuZGxlSWRlbnRpZmllcik7CisgICAgICAgICAgICBhdXRvIGhhbmRsZSA9IG1f
aGFuZGxlcy50YWtlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgbV9yZWdpc3RyeS51
bnJlZ2lzdGVySGFuZGxlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICB9CisgICAgICAgIG1f
aGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUoaGFuZGxlcyk7CisgICAgICAgIG1fY29ubmVjdGlv
bnMucmVtb3ZlKGNvbm5lY3Rpb24pOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBjcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkRpcmVjdG9yeSwgbV9wYXRoLCBlbXB0eVN0cmluZygpLCB0cnVlLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3ZDFiOWUyZDI3NzI2ODExNDIxODYyZWJi
NzE4MjA3OTk0NjcyNTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKQEAgLTAsMCArMSw1NSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIu
aCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAg
IGV4cGxpY2l0IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CisgICAgfkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cigpOworCisgICAgdm9pZCBjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OlR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6
b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcik+JiYpOworICAgIGNvbnN0IFN0cmluZyYgZ2V0UGF0aChGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNv
bm5lY3Rpb24mKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgorICAg
IFN0cmluZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9y
ZWdpc3RyeTsKKyAgICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7
CisgICAgSGFzaE1hcDxJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBIYXNoU2V0PEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4+IG1faGFuZGxlc0J5Q29ubmVjdGlvbjsKKyAgICBI
YXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRy
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDM2MmFmYjg4NTJhZmY0
ODA5OWUwOWNmNTVlN2VjNjczNWU1MzMzYzcuLjI3NTcyNDU1ZjVkNmE4MTU4YzZiMDBiMTRjMmQ0
ZGM1YWY2ZDllNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw4
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgog
I2luY2x1ZGUgPHBhbC9jcnlwdG8vQ3J5cHRvRGlnZXN0Lmg+CkBAIC00MSw2ICs0Myw3IEBAIFJl
ZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Y3JlYXRlKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JCiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgcGF0aCkK
ICAgICA6IG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fcXVldWUoV29ya1F1ZXVlOjpj
cmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuU3RvcmFnZSIpKQorICAgICwgbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5KG1ha2VVbmlxdWVSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeT4oKSkKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCkBAIC01Myw2
ICs1Niw4IEBAIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyCiAgICAgfSk7CiB9CiAKK05ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsKKwogdm9p
ZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0
aW9uKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOwpAQCAtNjUsNiArNzAsMTAgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJgogICAg
IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtR
dWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNz
YWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0
ZWRUaGlzID0gUmVmIHsgKnRoaXMgfSwgcHJvdGVjdGVkQ29ubmVjdGlvbiA9IFJlZiB7IGNvbm5l
Y3Rpb24gfV0oKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBt
X2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2lu
U3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVkQ29ubmVjdGlvbi5nZXQo
KSk7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNvbnN0IFN0cmluZyYgc3Ry
aW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsNiArMTIwLDU5IEBAIHZvaWQgTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYg
b3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiB9CiAKK3ZvaWQg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVj
dGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGxvY2FsT3JpZ2lu
U3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIobV9maWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmdldCgpKS5nZXREaXJlY3RvcnkoY29ubmVjdGlvbiwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRI
YW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdldElk
ZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBh
dXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxl
KGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsK
KworICAgIGhhbmRsZS0+Z2V0RmlsZUhhbmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkt
PmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBu
YW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQor
Cit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBk
ZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9
IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIp
OworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFs
c2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZW1v
dmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3Rk
OjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZXNvbHZlKHRhcmdldElk
ZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwogdm9pZCBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhl
MTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUwYWQ4ZWY1MGExYjBhYzYzNzlkOGI5OTA0YjUzM2QzNGY2
YTNkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05l
dHdvcmtTdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29y
ZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICsz
OCw5IEBAIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFz
cyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVl
dWVNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eTsKKworY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29u
bmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
UmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdlcj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBT
dHJpbmcmIHBhdGgpOwogCkBAIC00OCwxNCArNTIsMjEgQEAgcHVibGljOgogCiBwcml2YXRlOgog
ICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBw
YXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKCk7CiAgICAgT3JpZ2luU3RvcmFnZU1h
bmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAoaW1wbGVtZW50ZWQgYnkgZ2Vu
ZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24m
LCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3NhZ2UgSGFuZGxlcnMKKyAgICAvLyBNZXNz
YWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAgICAgdm9pZCBwZXJzaXN0
KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0
ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJ
UEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5
SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZW1v
dmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
IHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8
U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lv
bklEIG1fc2Vzc2lvbklEOwogICAgIFJlZjxXb3JrUXVldWU+IG1fcXVldWU7CkBAIC02Myw2ICs3
NCw4IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CiAgICAgSGFzaE1h
cDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFu
YWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnM7CiAgICAgSGFzaE1hcDxXZWJDb3Jl
OjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1f
c2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKworICAgIFVuaXF1ZVJlZjxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4g
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUwZThkZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3
OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFhMDY0NTM4NTE3ZTBjNzhjNmM1NGE0ODQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjYsNCArMjYsMTAgQEAK
ICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgewogICAgIFBlcnNpc3RlZChzdHJ1
Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBBc3lu
YwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChi
b29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBX
ZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90
IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0
aW9uCisgICAgSXNTYW1lRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4gKGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVI
YW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
ciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFs
PFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBl
bnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBX
YW50c0Nvbm5lY3Rpb24KKyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1v
dmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlm
aWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkgLT4gKGJvb2wgcmVtb3Zl
ZCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5
bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRh
cmdldElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBwYXRoLCBl
bnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdp
blN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggNzVhMWFlZDI0OWY5Mjg1OTkwZjY2Y2E5
NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2NTE4MzhhMzEzOGM5M2JmNjliYmU1NTZhY2Q0ZmVlY2Uw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdp
blN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw5IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKIAorI2luY2x1
ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGVudW0gY2xhc3Mg
T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXRNb2RlIDogYm9vbCB7IEJlc3RFZmZv
cnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwzNCBAQCBwdWJsaWM6CiAgICAgICAgICwg
bV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewogICAgIH0KKwogICAgIFN0b3JhZ2VCdWNr
ZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7IH0KICAgICB2b2lkIHNldE1vZGUo
U3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUgPSBtb2RlOyB9CisKKyAgICB2b2lkIGNv
bm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIHsKKyAgICAg
ICAgaWYgKG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQor
CisgICAgU3RyaW5nIHR5cGVTdG9yYWdlUGF0aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlm
aWVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8g
ZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jv
b3RQYXRoLCBzdG9yYWdlSWRlbnRpZmllcik7CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgeworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBt
YWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxl
U3lzdGVtIiksIHJlZ2lzdHJ5KTsKKworICAgICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOworICAgIH0KKwogcHJpdmF0ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAg
ICBTdHJpbmcgbV9pZGVudGlmaWVyOwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0
b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZmb3J0IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkK
QEAgLTUzLDE0ICs3OCwyOSBAQCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1h
bmFnZXIoU3RyaW5nJiYgcGF0aCkKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9y
YWdlTWFuYWdlcigpID0gZGVmYXVsdDsKIAotdm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdCgpCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6
Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAg
ICAgICBtX2RlZmF1bHRCdWNrZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisK
K09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdl
cjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAg
IGlmICghbV9kZWZhdWx0QnVja2V0KQogICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5p
cXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0
QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1
cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30KKwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdCgpCit7CisgICAgbV9wZXJzaXN0ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5z
ZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJl
dHVybiBkZWZhdWx0QnVja2V0KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDll
NDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLmJjNjJjZjQyMmY1YTM1ZGQy
ZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwy
MiArMjUsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAog
bmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnk7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBl
eHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2lu
U3RvcmFnZU1hbmFnZXIoKTsKIAorICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5l
Y3Rpb24mKTsKICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVk
OyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBm
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYp
OwogCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwog
ICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tl
dCgpOwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tl
dDsKICAgICBTdHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkKaW5kZXggZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWViZjcyYjE1Yi4uM2Y5
MzZkMjUyOTAyZTUyNDc4ZWI4MTEwOWJlMjY4ZGEwOTVlNWI4YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3Ro
YXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVu
dFdvcmxkSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJ
RCcsCiAgICAgICAgICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRl
bnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAg
ICAgICdXZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRl
eCA5M2RiYTZjZDk2MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZj
OGI5NWNmZDEzOWEwZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nv
dXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUs
OSBAQCBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBu
by11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24uY3BwIEBuby11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZl
clRvQ29udGV4dENvbm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05l
dHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3Rv
cmFnZU1hbmFnZXIuY3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250
ZW50L1dlYlVzZXJDb250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGlj
YXRpb24vV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRo
ZW50aWNhdGlvbi9XZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTkxZjc2YjM4OTRl
OTE3YzUyN2M0ZjkzOGZlZWQ4NjNjNzcwMWM2OS4uZDEyMGU0YWM1NGVjZTgwODU2NTJiMWE5YzUw
ZTA1YzFhYzM2YmQwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0zLDcgKzMsNyBAQAogCWFyY2hpdmVWZXJzaW9uID0gMTsKIAljbGFz
c2VzID0gewogCX07Ci0Jb2JqZWN0VmVyc2lvbiA9IDUyOworCW9iamVjdFZlcnNpb24gPSA1NDsK
IAlvYmplY3RzID0gewogCiAvKiBCZWdpbiBQQlhBZ2dyZWdhdGVUYXJnZXQgc2VjdGlvbiAqLwpA
QCAtMTQ2OSw2ICsxNDY5LDkgQEAKIAkJOTMwODVEREYyNkU1QkNGMTAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oICovOyB9OwogCQk5MzA4NURFMDI2RTVC
Q0ZEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggKi87IH07CiAJCTkzMDg1REUxMjZFNUJEMTMwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi87IH07CisJCTkzMTJCQUQ1MjZGMzNDMjYw
MEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKKwkJOTMxMkJBRDYyNkYzM0MyOTAwRkRE
RjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLzsgfTsKKwkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8q
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yLmggKi87IH07CiAJCTkzMjFENTg2MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVk
aWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlv
bkNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJOTMyMUQ1OEExQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1t
ZWRpYXRlQWN0aW9uVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5
cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTMyMzYxMUUxQjAxNURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMzYxMUQxQjAx
NURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNDg1LDYgKzE0ODgsNyBAQAog
CQk5MzU2RjJERjIxNTJCNzIzMDBFNkQ1REYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERjIxNTFBREY0
MDA3RjQ1NUYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgKi87IH07CiAJCTkzNTZGMkUwMjE1MkI3
NTIwMEU2RDVERiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REQyMTUxQURGMzAw
N0Y0NTVGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgKi87IH07CiAJCTkz
NTZGMkUxMjE1MkI3NjYwMEU2RDVERiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0RTEyMTUxQURG
NDAwN0Y0NTVGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgKi87IH07CisJCTkzNUI1NzlB
MjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVCNTc5ODI2RjUx
MjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovOyB9Owog
CQk5MzVFRUI5QjEyNzc2MTdDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVt
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5
ODEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1RUVCOUYxMjc3
NjFBQzAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjgg
LyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzY4RUVERTIzMDNBOTAyMDBCREIxMUEgLyogU3RvcmFn
ZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTM2OEVFREMyMzAzQThEODAwQkRCMTFBIC8qIFN0b3JhZ2VN
YW5hZ2VyU2V0TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKQEAgLTQ5MDQsNiArNDkwOCwxNCBA
QAogCQk5MzA4NURDQzI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVz
c2FnZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNS
ZXBsaWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0Qg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
MUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBX
S0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTkzMjFENTg3MUEzOEVFNzQwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNv
bnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS0lt
bWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQ5MTgsNiArNDkzMCw4IEBACiAJCTkzNDI1
ODhGMjU1NURDQTUwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTkzNDI1ODk4MjU1QjUzNEIwMDU5RUVERCAvKiBNZWRpYVBlcm1p
c3Npb25VdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQ
ZXJtaXNzaW9uVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNEI3
MjQzMTlGNUI5QkUwMEFFOTZENiAvKiBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBY3Rpb25NZW51SXRlbVR5cGVzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTkzNUVFQjk1MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS0J1bmRsZUJh
Y2tGb3J3YXJkTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk2
MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5k
bGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC05NjkxLDYgKzk3MDUsMTQgQEAKIAkJOTMwODVEQzIyNkUxQkI2NTAwMEVD
NkE3IC8qIHN0b3JhZ2UgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0g
KAorCQkJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmggKi8sCisJCQkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmNwcCAqLywKKwkJCQk5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuaCAqLywKKwkJCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8sCisJCQkJOTM1QjU3OTkyNkY1MTky
RjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwICovLAorCQkJ
CTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lz
dHJ5LmggKi8sCisJCQkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5jcHAgKi8sCisJCQkJOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REMzMjZFMUJCQkQwMDBFQzZBNyAv
KiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwICovLAogCQkJCTkzMDg1REM0MjZFMUJCQkQwMDBF
QzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDNzI2RTFDNkVF
MDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluICovLApAQCAtMTAw
MDYsNiArMTAwMjgsOCBAQAogCQkJCUNENjE3ODExMUU2REU5ODAwMEZEQTU3RCAvKiBjb2NvYSAq
LywKIAkJCQkyRDI4RjNERjE4ODVDQ0I0MDA0QjlFQUUgLyogaW9zICovLAogCQkJCUJDMTExQURF
MTEyRjVCOUEwMDMzN0JBQiAvKiBtYWMgKi8sCisJCQkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwICovLAorCQkJCTkzMUEwNzVBMjZG
MUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggKi8sCiAJCQkJ
MUE3Mjg0NDQxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwICov
LAogCQkJCTFBNzI4NDQ1MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9u
LmggKi8sCiAJCQkJRjQzQTlDREUyNUQ3MkUyRDAwOTkwRTI2IC8qIFNoYXJlYWJsZUJpdG1hcFV0
aWxpdGllcy5jcHAgKi8sCkBAIC0xMjE3OCw2ICsxMjIwMiwxMCBAQAogCQkJCTFBQTU3NUZCMTQ5
NkI1MjYwMEE0RUUwNiAvKiBFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3
MkVCQkQ3MjUzN0VCQUUwMDA1NTJCMyAvKiBFeHRyYVByaXZhdGVTeW1ib2xzRm9yVEFQSS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTdCODI2NDgyMzA1MEM1MTAwQjcyRUIwIC8qIEZpZG9TZXJ2aWNl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDYyNkYzM0MyOTAw
RkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
MzVCNTc5QTI2RjUxOTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDBCOTY2MUExOEUyNUFF
MTAwQ0UxRjg4IC8qIEZpbmRDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBOTBDMUY0MTI2
NEZENzEwMDNFNDRENCAvKiBGaW5kQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzU5
QzRBNTkxOEI4MTE3NDAwN0JEQ0I2IC8qIEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24uaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmZiNWY5NTRhYmM1MjVkM2M5NzBjYmMzYWJjNDZiOTNkNDFhMzllMTEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2lu
Y2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCisjaW5jbHVkZSA8V2ViQ29y
ZS9FeGNlcHRpb25Pci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaD4KKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK1JlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KGlkZW50
aWZpZXIsIGNvbm5lY3Rpb24pKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIDogbV9p
ZGVudGlmaWVyKGlkZW50aWZpZXIpCisgICAgLCBtX2Nvbm5lY3Rpb24oJmNvbm5lY3Rpb24pCit7
Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y29ubmVjdGlvbkNsb3Nl
ZCgpCit7CisgICAgbV9jb25uZWN0aW9uID0gbnVsbHB0cjsKK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFu
ZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPGJvb2w+JiYp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6
VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRp
ZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRp
ZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIGlm
IChtX2lkZW50aWZpZXIudG9VSW50NjQoKSA9PSAqaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFz
eW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6SXNTYW1lRW50cnkobV9p
ZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcihyZXN1bHQpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxS
ZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRp
ZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJl
ZiB7ICp0aGlzIH0sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcildKGF1dG8gaGFuZGxlSWRlbnRpZmllciwgYXV0byBlcnJvcikgbXV0YWJsZSB7Cisg
ICAgICAgIGlmICghaGFuZGxlSWRlbnRpZmllcikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVy
cm9yKSB9KTsKKyAgICAKKyAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5r
bm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8gaGFu
ZGxlID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKGhhbmRsZUlkZW50aWZp
ZXIudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdl
YkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUoV1RGTW92ZShuYW1lKSwgV1RGTW92
ZShoYW5kbGUpKSk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdl
YkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXREaXJlY3RvcnlIYW5kbGUobV9p
ZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9yKSBtdXRhYmxl
IHsKKyAgICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNv
ZGUoZXJyb3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3Jl
OjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0
byBoYW5kbGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxlSWRl
bnRpZmllci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFdURk1vdmUobmFt
ZSksIFdURk1vdmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OnJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgZGVsZXRlUmVj
dXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9p
ZD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJD
b3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25u
ZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6UmVtb3ZlRW50cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSksIFtj
b21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlbW92
ZWQsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlbW92ZWQpCisgICAgICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVy
dFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
eyB9KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpy
ZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAi
Q29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5z
dG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nv
bm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpSZXNvbHZlKG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25I
YW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcGF0aCwgYXV0byBlcnJv
cikgbXV0YWJsZSB7CisgICAgICAgIGlmICghcGF0aCkKKyAgICAgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2Rl
KGVycm9yKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHBhdGgudmFs
dWUoKSkpOworICAgIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQwYjMyMTRhNGM2
NjlhMjA5MGYwM2VmYjY5MTg2NTFmNWIxNDM5NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5LmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2Vi
Q29yZS9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENv
bm5lY3Rpb247Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBj
bGFzcyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFz
cyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNz
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3By
aXZhdGU6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3Rl
bUhhbmRsZUltcGwKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRl
bnRpZmllcigpIHsgcmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBp
c1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6RXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0Rmls
ZUhhbmRsZShTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShT
dHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFt
ZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3Jl
OjpFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRp
b25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQdHI8SVBDOjpDb25uZWN0
aW9uPiBtX2Nvbm5lY3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29u
bmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
U3RvcmFnZUNvbm5lY3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMyMWM0MzNkYjU3ZDkxMTcz
ZTcwNDY4N2U0MWEuLjc0YTYyYWQ3OWRkNjAxYTVkNDk4ZDlmM2YyZmM1MDM2NDA2ZjEzOTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9y
YWdlQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0aW9uLmgiCiAKKyNpbmNs
dWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5jbHVkZSAiTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2Fn
ZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC00OCw2ICs0OSwyMSBAQCB2b2lkIFdl
YlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdp
biwgQ29tcGxldGlvbkhhbgogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdChvcmlnaW4pLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVT
eXN0ZW1HZXREaXJlY3RvcnkoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0
byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKKyAgICBjb25uZWN0aW9uLnNlbmRXaXRoQXN5
bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtR2V0RGly
ZWN0b3J5KG9yaWdpbiksIFt3ZWFrQ29ubmVjdGlvbiA9IG1ha2VXZWFrUHRyKGNvbm5lY3Rpb24p
LCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGlk
ZW50aWZpZXIsIGF1dG8gZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWlkZW50aWZpZXIp
CisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9u
IHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisKKyAgICAgICAgaWYgKCF3ZWFr
Q29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3Jl
OjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3Qi
X3MgfSk7CisKKyAgICAgICAgYXV0byBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94
eTo6Y3JlYXRlKCppZGVudGlmaWVyLCAqd2Vha0Nvbm5lY3Rpb24pOworICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3Jl
YXRlKHsgfSwgV1RGTW92ZShpbXBsKSkpOworICAgIH0pOworfQorCiBJUEM6OkNvbm5lY3Rpb24m
IFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpjb25uZWN0aW9uKCkKIHsKICAgICByZXR1cm4gV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVj
dGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAppbmRleCAxYzBlNjYzNjliNTZlZGI3
MGU5M2E4ODllMzI1MDM1NjY2OTMzNmU1Li40Nzc0YTdiMDRiMWNjZDgwZjIxNDk5ODI2ZDU0Nzc0
NjAzYzcxNjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaApAQCAtMzEsNiArMzEsMTEg
QEAgbmFtZXNwYWNlIElQQyB7CiBjbGFzcyBDb25uZWN0aW9uOwogfQogCituYW1lc3BhY2UgV2Vi
Q29yZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3Mg
V2ViU3RvcmFnZUNvbm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFnZUNvbm5l
Y3Rpb24gewpAQCAtNDAsNiArNDUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIHZvaWQgcGVy
c2lzdGVkKFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJv
b2wpPiYmKSBmaW5hbDsKICAgICB2b2lkIHBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgZmlsZVN5
c3RlbUdldERpcmVjdG9yeShXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbigpOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMyNWQwMzEw
NTgyLi5mNzkzYTAzMDliZDIyNWFlYjM5MDQ4NGNiNzlhNjhjN2FmZWE0ZjNjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMjEtMDktMjAgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+
CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQ
SQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0
RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOgor
ICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2lj
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vz
cy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0yMCAgQXl1
bWkgS29qaW1hICA8YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9O
IChyMjgxMTAyPyk6IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1sIGlzIGEg
Zmxha3kgdGltZW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0MzdhNWUx
NDdkN2RkYTQwZDFiZTliY2M3MTA5YTI2ODA1YWUyYWMuLmUwMDJkMWIzZmJkMzJmNTE4MGU1Yjdh
MTMxZTU1NWQ1MmE5NGVhOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMzIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9h
ZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5h
bnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29s
dmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUt
c3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRv
dy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0
dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVy
dGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2VhOWU0N2Mu
LmU0YjNkY2E0MjU1ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0
aW9ucwpAQCAtMjAwLDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9zLyBbIFNr
aXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBTa2lw
IF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lwIF0KIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFNraXAg
XQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2YWN5LXJl
cG9ydCB0ZXN0cyByZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAtcHJpdmFj
eS1yZXBvcnQvIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKaW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0YmI0MDA5
Ni4uMWI0ZGM4YjZkYTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsyLDUgQEAK
IFBBU1Mgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRhIFVS
SSBpZnJhbWVzLgogUEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUgdW5kZWZp
bmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJl
Y3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJv
eGVkIGlmcmFtZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIo
KTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIo
KTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVj
dG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94
ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQ
aWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRvci5zdG9y
YWdlLmdldERpcmVjdG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitGQUlMIG5h
dmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkg
bXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3Ii
IGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVk
REIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0YjdiZTRk
Y2RhYWQ0YWI5MzA3OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1NGY4MmYz
NmVhMTMzN2UwYjAyYTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CkBAIC0xLDcgKzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5k
IHJlYWQgZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3
IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9y
ZSBoYW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcg
YSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhh
bmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJv
bSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24u
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxv
YnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3Jl
IGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBp
bmxpbmUga2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1Nh
bWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVmY2M4ZDZi
MjE5MzQzMmJhMGNjZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBiYTJjYjhk
MzM1YzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1p
c1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDEwICsxLDEwIEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3Rv
cnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBk
aWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5k
bGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBp
c1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5k
bGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50
IGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJu
cyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1NhbWVFbnRy
eSBmb3IgaWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0
b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlz
U2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNh
bCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBo
YW5kbGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQg
ZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBpc1NhbWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFs
c2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dAppbmRleCBlM2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0Li4zOTVl
Y2E1NTRiZGQ3YjhhYjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5l
bC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdv
cmtlciBhbmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3QgY2hhbm5l
bCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2VyLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMwZmI2Y2Iy
NjViODQzYjJiMGNlZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGExMmRlYTZj
NDgyODgxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRvIHNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZS4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
RmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVk
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBz
ZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9y
aWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwg
dG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdl
IHBvcnQgaW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdp
biBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2Fn
ZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGNyb3NzIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
RmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1l
c3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBt
ZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5MGUyM2M0
OTFmNTg4ZDFiNWI2ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1Y2UxMTFk
OWZjMmY3MDZhMGJiYzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
bWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
K0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJv
eGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxv
YiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CmluZGV4IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3YjUuLmE5
Mzg0N2QwMDM1YjNiZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13
aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2Fn
ZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA0
NTEwNjVlMzIyZGFmZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdmNGFmZmEx
OWMzODhlZTFjYzhkMDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1ZDkzZWU1
NzIxNTc5YmI5ZWZjNTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3NDZkNGNl
YjI5NGQ2NzBhN2Q1YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1l
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxv
YiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9j
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYwOTU5OTU4
OTYzZjJmNGQ2YTk3ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3ODFlZmM5
N2IxZDBmZGM4ZmIxZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdp
bmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBv
cmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRv
dy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3MmZmM2Y1
NzQxMmRkMDhlYzZhNGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkwNGZkNjdi
OTkxMWY3MDcwNmFkOWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdv
cmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNhMGY5NDcx
MGM4ZTNlMDVmOTVhMDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNkMjZmMzkx
N2UwNzY4NDBlNzFjZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSw5ICsxLDkgQEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVt
b3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRp
cmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCByZW1vdmUoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVj
dXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSBy
ZWN1cnNpdmUgb3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJl
bW92ZSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBk
aXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBh
biBhbHJlYWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBk
aXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25v
cmUgdGhlIHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRE
aXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CmluZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1ODgyMzAu
Ljc4MTcxZmYwZTQ4NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRs
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxz
ZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3Jl
YXRlcyBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBk
aXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJl
Y3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0
aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERp
cmVjdG9yeUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFt
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5
IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3Rv
cnlIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNl
KSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMg
YW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3Rvcmll
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShj
cmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3
aGVuIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5h
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
KSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBh
cmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2Vw
YXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0ZGM3Mzkx
YjA4M2ZkMDRhYmI4MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2ExYzg2ZmE2
N2E2ZmQ0Y2U4N2Y1NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0
dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUp
IGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSBy
ZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0
aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdp
dGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3Rz
IHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBnZXRGaWxlSGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFt
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0
ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1l
eGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVI
YW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5n
IGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShj
cmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5n
IGZpbGVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhp
c3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlz
dHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Z2V0RmlsZUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdp
dGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0
aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYxYzExMmRi
OTlhNjk2YzAzZmI0YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4MTIyOWQ3
MmVlMDMwNmE0YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFu
IGl0ZXJhdGlvbiBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIEBAYXN5bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3Mg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJh
dGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBrZXlzOiBm
dWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBp
dGVyYXRpb24gZG9lc24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IEBAYXN5bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3Jr
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVy
YXRvciBnZXRzIGdhcmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUt
cmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggYWM2ZmMxOTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgxNDcyMjVi
ZGE4NDkyOGRjMzI2NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1y
ZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKLUZB
SUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUg
c2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3Zl
RW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92
ZUVudHJ5KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3Vi
LWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5
KCkgd2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4u
IiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZUVudHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBh
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9u
IGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5v
bi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBk
ZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJl
bW92ZUVudHJ5KCkgd2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIu
LiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJl
bW92ZUVudHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAppbmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBiMWIzMzQw
Li5mNWU2NTFiMWVmMWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1G
QUlMIFJlc29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3Qg
cGF0aCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVy
bnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBp
cyBub3QgYSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBSZXNv
bHZlIHJldHVybnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGgg
d2l0aCBub24tYXNjaWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29y
a2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVk
LXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAzMzAxMGQ3
MTg0NTIyYmIzNzA1ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5MjNjNDQz
OTdmNjQxYzY1ZGNhZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0
dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13
b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBA
CiAKLUZBSUwgQXR0ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBh
Y2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0Rmls
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEwNGYxNWM3
YWZhZGExYzE5N2E2YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2MWE1Nzgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAK
IAotRkFJTCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0
IG1vZGlmaWVkIHRpbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgZ2V0
RmlsZSgpIHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRpbWUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1OWU2ZGJl
MGIwYzhlMmM2MGJhLi5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZmZWUwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1w
aXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEs
MTAgKzEsMTAgQEAKIAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBB
cnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUg
cGlwZWQgdG8gd2l0aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21tYW5k
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3
aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVk
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwgd2l0aCBm
ZXRjaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgpIGFib3J0
cyB3cml0ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4gYmUgcGlw
ZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNh
biBiZSBwaXBlZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0
aCB3cml0ZSBjb21tYW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJl
IHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJl
IHF1ZXVlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdlbGwgd2l0
aCBmZXRjaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkgYWJvcnRz
IHdyaXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFt
LXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1MTU3YTVk
YWNlZmMxMzVmYzA2NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4NzlhNTRiNjY2
NDhlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVT
dHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CkBAIC0xLDMxICsxLDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8g
YW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0
ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFu
IGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUo
KSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24g
YW5kIHN0cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGgg
YSBzdHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRo
IGFuIG9mZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVt
cHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3
aXRoIGEgdmFsaWQgdXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2Vy
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBh
IHN0cmluZyB3aXRoIHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZm
ZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCB3cml0ZSgpIHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVu
IHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBhdG9t
aWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBhdG9taWMgd3JpdGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUoKSBhZnRl
ciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0
b21pYyB3cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9w
ZXJhdGlvbiBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNs
b3NlLCBldmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFt
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB3cml0
ZSBtaXNzaW5nIGRhdGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgV3JpdGVQYXJhbXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBX
cml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUg
d2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRl
KCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5k
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMg
d2l0aG91dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJs
b2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2Fs
bGVkIHdpdGggYSBzdHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zm
c2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0
aCBhbiBvZmZzZXQgYmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2
YWxpZCB1dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0
ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHdp
bmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRv
bWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3Zl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRh
YmxlIGZpbGUgc3RyZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRlciBjbG9z
ZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRl
czogdHJ1bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUg
Y2xvc2UoKSBvcGVyYXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxl
IG9uIGNsb3NlLCBldmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNz
aW5nIGRhdGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBh
cmFtczogc2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxl
IHNob3VsZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJl
YW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2JkNjRjODQx
OTU1OTI0NTIxMmYyZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2YwZGEzODk0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVh
bS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
V3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIg
QEAKIAotRkFJTCB0cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4g
cGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3
aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBh
dG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVu
dHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUo
e2tlZXBFeGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBp
bml0aWFsaXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUg
c2l6ZSA8IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjb21t
YW5kcyBhcmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBzaHJp
bmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSB0
byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdy
aXRhYmxlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNh
dGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0
cnVlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJj
ZSBjb250ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRh
YmxlKHtrZWVwRXhpc3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJl
YW0gaW5pdGlhbGl6ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXpl
IDwgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFuZHMgYXJl
IHF1ZXVlZCwgc3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2ZjZTQ2Li5k
OGRjZWJlNDg3MTAyMzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1bGxzY3Jl
ZW4vZnVsbC1zY3JlZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9yYWdlL2Zp
bGVzeXN0ZW1hY2Nlc3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1i
YXNpY3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMyMTMwOWJh
ZmYwNWU5NDk0MTFiZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2Zp
bGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMjAgQEAKK1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1Mgcm9vdEhhbmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBpcyAiZGly
ZWN0b3J5IgorUEFTUyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5kbGUua2lu
ZCBpcyAiZGlyZWN0b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBmaWxlSGFu
ZGxlLm5hbWUgaXMgImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIKK1BBU1Mg
aGFuZGxlTmFtZXMubGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRpciIKK1BB
U1MgaGFuZGxlTmFtZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3RyaW5nKCkg
aXMgIk5vdEZvdW5kRXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRs
ZS1iYXNpY3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4NTE0ZjQz
NzYzNGVmZDRlMzBhOGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApAQCAtMCww
ICsxLDEwMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0
aWVzIG9mIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFuZGxlLCBk
aXJIYW5kbGUsIGZpbGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3JlYXRlRXJy
b3I7CisKK2Z1bmN0aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9yKSB7Cisg
ICAgICAgIHRlc3RGYWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30K
KworZnVuY3Rpb24gZ2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdlLmdldERp
cmVjdG9yeSgpLnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0gaGFuZGxl
OworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIsICIiKTsK
KyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAiZGlyZWN0
b3J5Iik7CisgICAgICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsKKyAgICB9
KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7
Cit9CisKK2Z1bmN0aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7CisgICAg
ZnJvbUhhbmRsZS5nZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0cnVlIH0p
LnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7CisgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7CisgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7Cisg
ICAgICAgIGNoZWNrSWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAgICB9KS5j
YXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9
CisKK2Z1bmN0aW9uIGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sKKyAgICBo
YW5kbGUxLmlzU2FtZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICBp
c1NhbWVFbnRyeSA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1lRW50cnki
KTsKKyAgICAgICAgY3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAgIH0pLmNh
dGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30K
KworZnVuY3Rpb24gY3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsKKyAgICBs
ZXQgb3B0aW9ucyA9IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxlLmdldEZp
bGVIYW5kbGUoImZpbGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgZmls
ZUhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFu
ZGxlLm5hbWUiLCAiZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVI
YW5kbGUua2luZCIsICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAgfSkuY2F0
Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAgIGZpbmlz
aFRlc3QoZXJyb3IpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGNy
ZWF0ZUVycm9yID0gZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3JlYXRl
RXJyb3IudG9TdHJpbmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUg
Zm91bmQgaGVyZS4iKTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQorCitmdW5j
dGlvbiByZXNvbHZlUGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhhbmRsZSku
dGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0OworICAgICAg
ICBzaG91bGRCZSgiaGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJlbW92ZUVu
dHJ5KGRpckhhbmRsZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAg
ICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92ZUVudHJ5
KGZyb21IYW5kbGUsIG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5hbWUpLnRo
ZW4oKHJlc3VsdCkgPT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyByZW1vdmVk
LgorICAgICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAgIH0pLmNh
dGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30K
KworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRydWU7Cisg
ICAgZ2V0RGlyZWN0b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRvdy50ZXN0
UnVubmVyIGlzIG5vdCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438783</attachid>
            <date>2021-09-20 23:31:23 -0700</date>
            <delta_ts>2021-09-21 15:34:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210920233121.patch</filename>
            <type>text/plain</type>
            <size>183670</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjc5OWM2NGFjZWE2Mzk2MGJlMTExYmM4Y2VhYjVl
ZGRjMjk0YTQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIxLTA5LTIwICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlOjppbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uSW5m
byk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKiBTb3VyY2VzLnR4
dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSlNOZXdseUNyZWF0ZWQp
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6CisKIDIwMjEtMDktMjAg
IEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBNYWtl
IEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBlcmltZW50YWwgRmVhdHVy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNkNzc0MDcxZjU1NDdiLi44
M2UzYTZkYzU2NzkyZWQ4YWQ3MzBlMDY2YjZjZmM4NjkwZTZmMTI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDgwIEBACisyMDIxLTA5LTIwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJvZHVj
ZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUgaGFuZGxlcy4gRWFjaCBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAorICAgICAgICBGaWxlU3lz
dGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0Ojpj
b252ZXJ0VG9FeGNlcHRpb25Db2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeSk6CisgICAgICAg
IChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKToK
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldEZpbGVIYW5kbGUp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5
SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29s
dmUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OnBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6cXVldWUgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojpy
ZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk6OnVucmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5j
cHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y3JlYXRlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRoKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnkpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmg6IEFkZGVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0
b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2Fn
ZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFu
YWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdl
QnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAg
IChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6
OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMu
cHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAg
ICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSk6CisgICAg
ICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9z
ZWQpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1Nh
bWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6
OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5OjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29sdmUpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXRE
aXJlY3RvcnkpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFn
ZUNvbm5lY3Rpb24uaDoKKwogMjAyMS0wOS0xOSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVo
QGFwcGxlLmNvbT4KIAogICAgICAgICBUZWFjaCBgV2ViS2l0OjpjcmVhdGVTaGFyZWFibGVCaXRt
YXBgIHRvIHNuYXBzaG90IHZpZGVvIGVsZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQppbmRleCBmNDEx
MzM0ZDZiNzE0NzM3MDU3MDZjZTA1ZjRkYzYxMDQ4N2NhNzdlLi41NWM1MDJkNWIwOTdjMzQyMjI5
NWE4ZTJmZDdmNTY4M2I1N2VkMDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKQEAgLTQwLDYgKzQwLDcg
QEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKICAgICBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAogICAgIE1vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKKyAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9T
dG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaAogCiAgICAgTW9kdWxlcy9nZW9sb2NhdGlv
bi9HZW9sb2NhdGlvbi5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAK
aW5kZXggZDk1ZDY5MjQzZjUwNDA5ZGUzMjZmYWE5YWNmZTAwY2ExZjZkYTJlMS4uZGJiMDhhZDVj
NmY4OWU2YTYxM2NlZWY1M2VjNjI5OTZiYWE0MDRhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmNwcApAQCAtMjYsNDEgKzI2LDY0IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgogCisjaW5jbHVkZSAi
RmlsZVN5c3RlbUhhbmRsZUltcGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5o
IgorI2luY2x1ZGUgIkpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgorI2luY2x1ZGUgIkpT
RmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKTsKIAotUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU+IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lKQorUmVm
PEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNy
ZWF0ZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKIHsK
LSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFdURk1v
dmUobmFtZSkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlKFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpKTsKIH0KIAotRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lKQot
ICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpEaXJlY3Rvcnks
IFdURk1vdmUobmFtZSkpCitGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBp
bXBsKQorICAgIDogRmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpEaXJl
Y3RvcnksIFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpCiB7CiB9CiAKLXZvaWQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShjb25zdCBTdHJpbmcmLCBzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVPcHRpb25zPiwgRE9NUHJv
bWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlz
ZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RmlsZUhhbmRsZShTdHJpbmcm
JiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVP
cHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0
ZW1GaWxlSGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlv
biB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7Cisg
ICAgaW1wbCgpLmdldEZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3Nhcnks
IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAg
ICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2Uu
cmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCi12b2lk
IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJp
bmcmLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldERpcmVjdG9y
eU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6
OmdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OkdldERpcmVjdG9yeU9wdGlvbnM+IG9wdGlvbnMsIERPTVByb21p
c2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJv
bWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJv
ciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0g
b3B0aW9ucyA/IG9wdGlvbnMtPmNyZWF0ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXREaXJlY3Rv
cnlIYW5kbGUoV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3NhcnksIFtwcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3Vs
dC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQu
cmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCi12b2lkIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8Rmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6UmVtb3ZlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJl
ZDx2b2lkPiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92
ZUVudHJ5KFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZTo6UmVtb3ZlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYg
cHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRF
cnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5
ID0gb3B0aW9ucyA/IG9wdGlvbnMtPnJlY3Vyc2l2ZSA6IGZhbHNlOworICAgIGltcGwoKS5yZW1v
dmVFbnRyeShXVEZNb3ZlKG5hbWUpLCBkZWxldGVSZWN1cnNpdmVseSwgW3Byb21pc2UgPSBXVEZN
b3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2Uuc2V0
dGxlKFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTo6cmVzb2x2ZShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURl
ZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJvbWlzZSkKK3ZvaWQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUsIERP
TVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmIHByb21pc2UpCiB7
Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3Qg
aW1wbGVtZW50ZWQiX3MgfSk7CisgICAgaW1wbCgpLnJlc29sdmUoaGFuZGxlLmltcGwoKSwgW3By
b21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAg
IGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNv
bHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCmluZGV4
IDRhZjFkOWRiNzI0Mjg0OTI0NzQyOTFhZGVkNDhjOTQ3ZjQzNDUwMmIuLjdjNDdlNzU1ZWMwYTk2
ZDBiZjI1OWVlNTQzYzI1ZTQ2ZmFmMTA0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuaApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNz
IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwogCi1jbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
IDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgeworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpOwogcHVibGljOgogICAgIHN0cnVj
dCBHZXRGaWxlT3B0aW9ucyB7CkBAIC00NiwxNCArNDYsMTggQEAgcHVibGljOgogICAgICAgICBi
b29sIHJlY3Vyc2l2ZSB7IGZhbHNlIH07CiAgICAgfTsKIAotICAgIHN0YXRpYyBSZWY8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmKTsKLSAgICB2b2lkIGdldEZpbGVI
YW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldEZpbGVPcHRpb25zPiwg
RE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYp
OwotICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpv
cHRpb25hbDxHZXREaXJlY3RvcnlPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVy
ZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik7Ci0gICAgdm9pZCByZW1vdmVFbnRy
eShjb25zdCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8UmVtb3ZlT3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDx2b2lkPiYmKTsKLSAgICB2b2lkIHJlc29sdmUoY29uc3QgRmlsZVN5c3Rl
bUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYm
KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKKyAgICB2
b2lkIGdldEZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgc3RkOjpvcHRpb25hbDxHZXRGaWxlT3B0
aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+PiYmKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShTdHJpbmcmJiBuYW1lLCBzdGQ6
Om9wdGlvbmFsPEdldERpcmVjdG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50
ZXJmYWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKTsKKyAgICB2b2lkIHJlbW92ZUVu
dHJ5KFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8UmVtb3ZlT3B0aW9ucz4sIERPTVByb21p
c2VEZWZlcnJlZDx2b2lkPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZSYs
IERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+PiYmKTsKIAogcHJp
dmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmKTsK
KyAgICBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpF
X1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpCisg
ICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGUmIGhh
bmRsZSkgeyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxl
OjpLaW5kOjpEaXJlY3Rvcnk7IH0KK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
RmlsZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCmluZGV4IDllZGMyMDRlMTdlZTEzMzRmMzA3NzBlMmJh
NzQ1MDU5ZGE1ODcwYTIuLmYxNWUwMTFkNmY2M2U1NzAzOWM2ZTk0NjI3ZWEyNWFkMDlmMGUxMjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRmlsZUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCiAKKyNp
bmNsdWRlICJGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURl
ZmVycmVkLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KIApAQCAtMzMsMTMg
KzM0LDEzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsKIAotUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBG
aWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3Rl
bUZpbGVIYW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSwg
UmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgRmlsZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAgIHJldHVybiBh
ZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFdURk1vdmUobmFtZSksIFdURk1vdmUo
aW1wbCkpKTsKIH0KIAotRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQ6OkZpbGUsIFdURk1vdmUobmFtZSkpCitGaWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5
c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYm
IGltcGwpCisgICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkZp
bGUsIFdURk1vdmUobmFtZSksIFdURk1vdmUoaW1wbCkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRs
ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLmgKaW5kZXggMGE3ZmE0ZTM4YjhhNTA0ODBmM2UzMjI3OWRjMzk5MWMwNGUzY2I5
MS4uNDgyOWJiMjQxNzc5Yzc1NGVhN2E1ODdhZTZkMWExZTkyNzJkZDMxMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLmgKQEAgLTM0LDExICszNCwxNSBAQCBjbGFzcyBGaWxlOwogY2xhc3Mg
RmlsZVN5c3RlbUZpbGVIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CiAg
ICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7CiBwdWJsaWM6
Ci0gICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmKTsK
KyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVh
dGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiAgICAgdm9pZCBnZXRG
aWxlKERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZT4+JiYpOwogCiBwcml2YXRl
OgotICAgIGV4cGxpY2l0IEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmKTsKKyAgICBGaWxl
U3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5
cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKSB7IHJldHVybiBoYW5k
bGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkZpbGU7IH0KK1NQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAppbmRleCAy
MTIxYjFjYzI1MTUxOGJiOTVkZjA2OTQxMWMyMTEyYjYwODUwZmJmLi5iMDc0NDhjZmU1YTYwNmQw
YWJlZDUwMzRiZDI0ZmE5ZGI2MjA4YTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCkBAIC0z
MywxNSArMzMsMjMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEX0lNUEwoRmlsZVN5c3RlbUhhbmRsZSk7CiAKLUZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0
ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lKQorRmls
ZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kIGtp
bmQsIFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogICAg
IDogbV9raW5kKGtpbmQpCiAgICAgLCBtX25hbWUoV1RGTW92ZShuYW1lKSkKKyAgICAsIG1faW1w
bChXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZpbGVTeXN0ZW1IYW5kbGU6OmlzU2FtZUVu
dHJ5KGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVh
bj4mJiBwcm9taXNlKQorRmlsZVN5c3RlbUhhbmRsZTo6fkZpbGVTeXN0ZW1IYW5kbGUoKSA9IGRl
ZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhh
bmRsZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQog
ewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90
IGltcGxlbWVudGVkIl9zIH0pOworICAgIGlmIChtX2tpbmQgIT0gaGFuZGxlLmtpbmQoKSB8fCBt
X25hbWUgIT0gaGFuZGxlLm5hbWUoKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVzb2x2ZShm
YWxzZSk7CisKKyAgICBtX2ltcGwtPmlzU2FtZUVudHJ5KGhhbmRsZS5pbXBsKCksIFtwcm9taXNl
ID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBwcm9t
aXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1h
Y2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAppbmRleCA3NTRlNDk0MTliYjYzN2YxN2YwN2Zk
ODAzMTk5ZjIyMTgyNzY5OTdhLi42NWEzZmQ2N2VhZmFhMGZlMDQ3NzBmNTU5NGEwNTgzNDJmZTky
ZjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKQEAgLTMxLDI5ICszMSwzMiBAQAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRE9NUHJvbWlzZURlZmVycmVk
OworCitjbGFzcyBGaWxlU3lzdGVtSGFuZGxlSW1wbDsKIGVudW0gY2xhc3MgUGVybWlzc2lvblN0
YXRlIDogdWludDhfdDsKIAogY2xhc3MgRmlsZVN5c3RlbUhhbmRsZSA6IHB1YmxpYyBSZWZDb3Vu
dGVkPEZpbGVTeXN0ZW1IYW5kbGU+IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEZpbGVT
eXN0ZW1IYW5kbGUpOwogcHVibGljOgorICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUoKTsK
KwogICAgIGVudW0gY2xhc3MgS2luZCA6IHVpbnQ4X3QgewogICAgICAgICBGaWxlLAogICAgICAg
ICBEaXJlY3RvcnkKICAgICB9OwotCi0gICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZSgpID0g
ZGVmYXVsdDsKLQogICAgIEtpbmQga2luZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2luZDsgfQogICAg
IGNvbnN0IFN0cmluZyYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQorICAgIEZpbGVT
eXN0ZW1IYW5kbGVJbXBsJiBpbXBsKCkgeyByZXR1cm4gbV9pbXBsLmdldCgpOyB9CiAKLSAgICB2
b2lkIGlzU2FtZUVudHJ5KGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJy
ZWQ8SURMQm9vbGVhbj4mJik7CisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxl
JiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYpOwogCiBwcm90ZWN0ZWQ6Ci0gICAg
RmlsZVN5c3RlbUhhbmRsZShLaW5kLCBTdHJpbmcmJiBuYW1lKTsKKyAgICBGaWxlU3lzdGVtSGFu
ZGxlKEtpbmQsIFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiAK
IHByaXZhdGU6CiAgICAgS2luZCBtX2tpbmQgeyBLaW5kOjpGaWxlIH07CiAgICAgU3RyaW5nIG1f
bmFtZTsKKyAgICBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+IG1faW1wbDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbAppbmRleCAyMDhlNzQ1Y2Mz
YmZjNGM3OTc2ZWMwMjhlMWI0ZGQ2MmFhZmQwMzA4Li45YmQwMTAwMTFiZjNjNWM4NzdkZTY4M2Q2
YWE4MTZkYmVhYTEwZmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCkBAIC0yOSw2ICsyOSw3
IEBAIGVudW0gRmlsZVN5c3RlbUhhbmRsZUtpbmQgewogfTsKIAogWworICAgIEN1c3RvbVRvSlNP
YmplY3QsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlciksCiAgICAgRW5hYmxlZEJ5U2V0dGlu
Zz1GaWxlU3lzdGVtQWNjZXNzLAogICAgIFNlY3VyZUNvbnRleHQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGVJbXBsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMjk5ZTQyZjNkM2E0MTk4NTlkOTEwYzU0NzA1MDhhZjdkMmU5
Njk3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7
CitjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBF
eGNlcHRpb25PcjsKKworY2xhc3MgRmlsZVN5c3RlbUhhbmRsZUltcGwgOiBwdWJsaWMgUmVmQ291
bnRlZDxGaWxlU3lzdGVtSGFuZGxlSW1wbD4geworcHVibGljOgorICAgIHZpcnR1YWwgfkZpbGVT
eXN0ZW1IYW5kbGVJbXBsKCkgeyB9CisgICAgdmlydHVhbCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90
PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaXNTYW1l
RW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2Vw
dGlvbk9yPGJvb2w+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGdldEZpbGVIYW5kbGUo
U3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9vbCBj
cmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IHJlbW92ZUVudHJ5KFN0cmluZyYmIG5hbWUsIGJvb2wgcmVjdXJzaXZlLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4
Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJikgPSAwOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1
bW15U3RvcmFnZVByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVt
bXlTdG9yYWdlUHJvdmlkZXIuaAppbmRleCA5MTQ0YTNkN2EzNDRhMGM4YjMxZjk0YjY2YWYwODc4
NzJlNzEwYzZhLi5kNzBlY2YzZjBlYWZjYTRiZWU2ODEzODZiNWNhNjQ5YWFhNTQ2MTExIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlk
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJv
dmlkZXIuaApAQCAtNTEsNiArNTEsMTEgQEAgcHJpdmF0ZToKICAgICAgICAgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisgICAgICAgIAorICAgICAg
ICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoQ2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7CisgICAgICAgIH0KICAg
ICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0aW9uKCkgZmluYWwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVj
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9u
LmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3NTUzMy4uNjY4OGY0
Yjg2ODQ4MGZkNTdhZjQ4OWMxMTE5MWMwNzYwZTA1ZjY0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTI1LDExICsyNSwx
NCBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBsYXRlPHR5cGVuYW1l
PiBjbGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3Rv
cmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewpA
QCAtMzcsNiArNDAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+U3RvcmFnZUNvbm5lY3Rpb24o
KSA9IGRlZmF1bHQ7CiAgICAgdmlydHVhbCB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBw
ZXJzaXN0KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoQ2xpZW50T3JpZ2lu
JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU+PiYmKT4mJikgPSAwOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAK
aW5kZXggZmI1NGY5ODBhMzU1MDJiYzE2MzMyZjc3N2YxODJlYmFmMTU3MzA5ZS4uN2MxNjg5MDY1
N2UwY2IxYzIyMWIxMDE3NTRiM2VjM2IzNGEyOGUwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNyw4ICsyNywxMCBAQAog
I2luY2x1ZGUgIlN0b3JhZ2VNYW5hZ2VyLmgiCiAKICNpbmNsdWRlICJDbGllbnRPcmlnaW4uaCIK
KyNpbmNsdWRlICJFeGNlcHRpb25Pci5oIgogI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgorI2luY2x1ZGUgIkpT
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgogI2luY2x1ZGUgIk5hdmlnYXRvckJhc2UuaCIK
ICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxp
bmVzLmg+CkBAIC00Nyw1MyArNDksNjggQEAgU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VNYW5hZ2Vy
KE5hdmlnYXRvckJhc2UmIG5hdmlnYXRvcikKIHsKIH0KIAotdm9pZCBTdG9yYWdlTWFuYWdlcjo6
cGVyc2lzdGVkKERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCitzdHJ1
Y3QgU3RvcmFnZU1hbmFnZXI6OkNvbm5lY3Rpb25JbmZvIHsKKyAgICBTdG9yYWdlQ29ubmVjdGlv
biYgY29ubmVjdGlvbjsKKyAgICBDbGllbnRPcmlnaW4gb3JpZ2luOworfTsKKworRXhjZXB0aW9u
T3I8U3RvcmFnZU1hbmFnZXI6OkNvbm5lY3Rpb25JbmZvPiBTdG9yYWdlTWFuYWdlcjo6Y29ubmVj
dGlvbkluZm8oKQogewogICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVybiBwcm9t
aXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2Vz
IG5vdCBleGlzdCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH07CiAKICAgICBhdXRvIGNvbnRl
eHQgPSBtX25hdmlnYXRvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwogICAgIGlmICghY29u
dGV4dCkKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiVGhlIGNvbnRleHQgaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29udGV4dCBpcyBpbnZhbGlkIl9zIH07
CiAKKyAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOworICAgIGlm
ICghb3JpZ2luKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3Is
ICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9OworICAgIAogICAgIGF1dG8gY29ubmVjdGlvbiA9IGNv
bnRleHQtPnN0b3JhZ2VDb25uZWN0aW9uKCk7CiAgICAgaWYgKCFjb25uZWN0aW9uKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJU
aGUgY29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH0pOworICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJDb25uZWN0aW9uIGlzIGludmFsaWQiX3MgfTsKIAotICAg
IGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmln
aW4pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH0pOworICAgIHJldHVybiBDb25uZWN0aW9u
SW5mbyB7ICpjb25uZWN0aW9uLCB7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRhdGEoKSwgb3JpZ2lu
LT5kYXRhKCkgfSB9OworfQorCit2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0ZWQoRE9NUHJv
bWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK3sKKyAgICBhdXRvIGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9u
SW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0g
ICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNpc3RlZCh7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRh
dGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29s
IHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5l
Y3Rpb25JbmZvLmNvbm5lY3Rpb24ucGVyc2lzdGVkKFdURk1vdmUoY29ubmVjdGlvbkluZm8ub3Jp
Z2luKSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJs
ZSB7CiAgICAgICAgIHByb21pc2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2
b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFu
PiYmIHByb21pc2UpCiB7Ci0gICAgaWYgKCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRv
ZXMgbm90IGV4aXN0Il9zIH0pOworICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9
IGNvbm5lY3Rpb25JbmZvKCk7CisgICAgaWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFz
RXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5m
b09yRXhjZXB0aW9uLnJlbGVhc2VFeGNlcHRpb24oKSk7CiAKLSAgICBhdXRvIGNvbnRleHQgPSBt
X25hdmlnYXRvci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwotICAgIGlmICghY29udGV4dCkK
LSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiVGhlIGNvbnRleHQgaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8gY29ubmVjdGlv
biA9IGNvbnRleHQtPnN0b3JhZ2VDb25uZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uKQot
ICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJy
b3IsICJUaGUgY29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgYXV0byogb3JpZ2lu
ID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBpZiAoIW9yaWdpbikKLSAgICAgICAg
cmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3Jp
Z2luIGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdCh7
IGNvbnRleHQtPnRvcE9yaWdpbigpLmRhdGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2Ug
PSBXVEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBj
b25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZh
bHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24ucGVyc2lzdChXVEZN
b3ZlKGNvbm5lY3Rpb25JbmZvLm9yaWdpbiksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lz
dGVkKTsKICAgICB9KTsKIH0KIAogdm9pZCBTdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbUFjY2Vz
c0dldERpcmVjdG9yeShET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcmV0dXJuIHByb21pc2UucmVqZWN0
KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOwor
ICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25JbmZvKCk7Cisg
ICAgaWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFzRXhjZXB0aW9uKCkpCisgICAgICAg
IHJldHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VF
eGNlcHRpb24oKSk7CisKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvID0gY29ubmVjdGlvbkluZm9P
ckV4Y2VwdGlvbi5yZWxlYXNlUmV0dXJuVmFsdWUoKTsKKyAgICByZXR1cm4gY29ubmVjdGlvbklu
Zm8uY29ubmVjdGlvbi5maWxlU3lzdGVtR2V0RGlyZWN0b3J5KFdURk1vdmUoY29ubmVjdGlvbklu
Zm8ub3JpZ2luKSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0
YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICBy
ZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAg
ICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggNDVkN2I4YzE2YWRhNWY0MDU4NDg3Nzgw
NTg4NTc4ZmRjN2I3ZjFhOC4uZDcxZGE1N2UyNzJiNGZjZTA4Mjk1Mjg0YTcyN2ZlMmIyNDk4N2Uy
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5h
Z2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2Vy
LmgKQEAgLTMxLDkgKzMxLDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKIGNsYXNzIE5hdmlnYXRvckJhc2U7CiB0ZW1wbGF0ZTx0
eXBlbmFtZT4gY2xhc3MgRE9NUHJvbWlzZURlZmVycmVkOwotY2xhc3MgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIAogY2xh
c3MgU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlTWFuYWdlcj4gewog
ICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU3RvcmFnZU1hbmFnZXIpOwpAQCAtNDUsNyArNDYs
OCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgU3RvcmFnZU1hbmFnZXIoTmF2
aWdhdG9yQmFzZSYpOwotCisgICAgc3RydWN0IENvbm5lY3Rpb25JbmZvOworICAgIEV4Y2VwdGlv
bk9yPENvbm5lY3Rpb25JbmZvPiBjb25uZWN0aW9uSW5mbygpOwogICAgIFdlYWtQdHI8TmF2aWdh
dG9yQmFzZT4gbV9uYXZpZ2F0b3I7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGQ4MGJkMzJjZTcw
ZDZmZTZmMTViOTlhMjllZWU4NTI1OTc2ZGJhNmEuLjUyZTFhYmFhNDkwODM1YzRiYzRhYzc0MDI3
ZDNhZGMwNTVhOWUzYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC00ODgsNiArNDg4LDcgQEAgYmluZGlu
Z3MvanMvSlNFeGVjU3RhdGUuY3BwCiBiaW5kaW5ncy9qcy9KU0V4dGVuZGFibGVNZXNzYWdlRXZl
bnRDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0ZldGNoRXZlbnRDdXN0b20uY3BwCiBiaW5kaW5n
cy9qcy9KU0ZpbGVTeXN0ZW1FbnRyeUN1c3RvbS5jcHAKK2JpbmRpbmdzL2pzL0pTRmlsZVN5c3Rl
bUhhbmRsZUN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTEFsbENvbGxlY3Rpb25DdXN0b20u
Y3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcAogYmluZGluZ3Mv
anMvSlNIVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA3MGIwNDA5YjNlZjE2ZmEwYWQ4ZmY1
YzhmZmM1YmFhNTNjOTYxMDNhLi42MDE3Mjg5NzFkZDRkNDBkZjRmNDI1NjBkNjM4ODdlMGMxMTBl
MjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC0yODE4LDYgKzI4MTgsNyBAQAogCQk5MzBBQUM5QTI1MEVCODQ5MDAxM0RBOUYg
LyogQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTMwQUFDOTgyNTBFQjgxNzAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzBB
QUM5RjI1MEVENDA5MDAxM0RBOUYgLyogSlNDU1NDb25kaXRpb25SdWxlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUM5RDI1MEVENDA5MDAxM0RB
OUYgLyogSlNDU1NDb25kaXRpb25SdWxlLmggKi87IH07CiAJCTkzMEFBQ0EyMjUwRUQ0MTEwMDEz
REE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDQTAyNTBFRDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3JvdXBp
bmdSdWxlLmggKi87IH07CisJCTkzMTJCQUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVt
SGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMxNTNCREEx
NDE4MUY3QTAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZUAyeC5wbmcgaW4gUmVzb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkQ5MTQxODFGN0EwMEZDRjVCRSAv
KiBtaXNzaW5nSW1hZ2VAMngucG5nICovOyB9OwogCQk5MzE1M0JEQzE0MTk1OUJDMDBGQ0Y1QkUg
LyogdGV4dEFyZWFSZXNpemVDb3JuZXIucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEQjE0MTk1OUJCMDBGQ0Y1QkUgLyogdGV4dEFyZWFS
ZXNpemVDb3JuZXIucG5nICovOyB9OwogCQk5MzE1M0JFMjE0MTk1QTU3MDBGQ0Y1QkUgLyogbWlz
c2luZ0ltYWdlLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTMxNTNCRTExNDE5NUE1NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgKi87IH07
CkBAIC0yODcwLDkgKzI4NzEsOSBAQAogCQk5MzQzQ0I4MjEyRjI1RTUxMDAzM0M1RUUgLyogVGV4
dENvZGVjVVRGOC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTM0M0NCODAxMkYyNUU1MTAwMzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCAqLzsgfTsKIAkJ
OTM0NDJDOUUwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ0MkM5RDBEMkIz
MzVDMDAzMzhGRjkgLyogSFRNTFRhYmxlUm93c0NvbGxlY3Rpb24uaCAqLzsgfTsKIAkJOTM0NDNF
ODUyNkU5OTVCQjAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDNFN0QyNkU4
QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oICovOyB9Owot
CQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDQy
NkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgfTsKLQkJ
OTM0NDNFODcyNkU5OTVDMDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJENjI2REQ2MjVD
MDA1M0IzREIgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCAqLzsgfTsKLQkJOTM0NDNFODgyNkU5
OTVDNDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBGaWxl
U3lzdGVtSGFuZGxlLmggKi87IH07CisJCTkzNDQzRTg2MjZFOTk1QkQwMDU4NTM4RiAvKiBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzJDOUJENDI2REQ2MjVBMDA1M0IzREIgLyogRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYy
NkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM0NDNFODgyNkU5OTVDNDAwNTg1
MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFu
ZGxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTM0OTA3RTQxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5MDdFMzEyNUJCQkM4MDA3
RjIzQTAgLyogR3JhcGhpY3NDb250ZXh0Q0cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzQ5NTBDRDI1Mzk0MzYxMDA5OUYxNzEgLyogU3BlZWNo
UmVjb2duaXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzNDk1MEIxMjUzOTQzNDgwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbi5oICovOyB9
OwogCQk5MzQ5NTBDRTI1Mzk0MzY1MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5h
dGl2ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0
OTUwQkMyNTM5NDM0RTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCAq
LzsgfTsKQEAgLTExNjk1LDYgKzExNjk2LDggQEAKIAkJOTMxNkRERjgyNDBDNjRCMzAwOTM0MEFB
IC8qIFNpbXBsZVJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbXBs
ZVJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMTZEREZBMjQwQzY0QjMw
MDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTaW1wbGVSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
MTZEREZFMjQwQzY0RjgwMDkzNDBBQSAvKiBCb3VuZGFyeVBvaW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEJvdW5kYXJ5UG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1IYW5kbGVJbXBs
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUExQkREMjZGN0VEMDkwMDgxQTdF
NSAvKiBKU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNG
aWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTMxQUUzQjgxRkI4MEVBRTAwRjVFRkIyIC8qIEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNWYWx1ZUluV3JhcHBlZE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5MzFCQ0M2MDExMjRERkNCMDBCRTcwREQgLyogTWVkaWFDYW5TdGFydExpc3Rl
bmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ2FuU3RhcnRMaXN0
ZW5lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzFDQkQwNjE2MUE0NEU5MDBF
NEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0yMzAzNiw2ICsyMzAzOSw3IEBACiAJCQkJNDZCNjNGNkIxQzZFOENERjAwMkU5
MTRCIC8qIEpTRXZlbnRUYXJnZXRDdXN0b20uaCAqLywKIAkJCQk0MTMxRjNCMTFGOTU1MjgxMDA1
OTk5NUEgLyogSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcCAqLywKIAkJCQk4MzVCNjgwRTFGNTQ4QkRF
MDA3MUY3RjYgLyogSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwICovLAorCQkJCTkzMUExQkRE
MjZGN0VEMDkwMDgxQTdFNSAvKiBKU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwICovLAogCQkJ
CTg0QkJFNTQ4MjU5N0U3RjEwMEFBOEYyOCAvKiBKU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9tLmNw
cCAqLywKIAkJCQk2RTU3NkJDMzI0RUI1MDlDMDA5NEQ0QUEgLyogSlNIVE1MQ2FudmFzRWxlbWVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJQkNDQkFEM0EwQzE4QkZGODAwQ0U4OTBGIC8qIEpTSFRNTENv
bGxlY3Rpb25DdXN0b20uY3BwICovLApAQCAtMjMzNjgsNiArMjMzNzIsNyBAQAogCQkJCTkzMkM5
QkQwMjZERDYyNTUwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFuZGxlLmNwcCAqLywKIAkJCQk5MzJD
OUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovLAogCQkJCTkzMkM5
QkQ5MjZERDYyNjAwMDUzQjNEQiAvKiBGaWxlU3lzdGVtSGFuZGxlLmlkbCAqLywKKwkJCQk5MzFB
MDc1ODI2RjFCNDRGMDA0NDc0Q0QgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCAqLywKIAkJCQk5
MzQ0M0U3QjI2RThBNkJDMDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXIrRmlsZVN5c3RlbUFjY2Vz
cy5pZGwgKi8sCiAJCQkJOTM0NDNFN0QyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2Vy
RmlsZVN5c3RlbUFjY2Vzcy5oICovLAogCQkJKTsKQEAgLTMyNDQ0LDYgKzMyNDQ5LDcgQEAKIAkJ
CQk4M0ZCMzM3NTFGNTA4QTVCMDA5ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRyeS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJOTM0NDNFODcyNkU5OTVDMDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzQ0M0U4ODI2RTk5NUM0MDA1ODUzOEYgLyog
RmlsZVN5c3RlbUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDkyNkYzQUM5QTAw
RkRERjVGIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVF
QjY5RjBFODFEQUVCMDBCMjU5NjUgLyogRmlsbExheWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3
MTJCRTQ4MzFGRTg2NUREMDAyMDMxQ0MgLyogRmlsbE1vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTg0NUU3MkY4MEZEMjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCBpbiBIZWFkZXJzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3Vz
dG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYTJjZGVlMTU2NzU2MjQyM2JhN2U2MTg1YTEwYTc2NzI3ZTY1
NzhkZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmls
ZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHAKQEAgLTAsMCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1IYW5kbGUuaCIKKworI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVt
RmlsZUhhbmRsZS5oIgorI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2luY2x1ZGUgIkpTRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgorI2luY2x1ZGUgIkpTRmlsZVN5c3RlbUZpbGVIYW5k
bGUuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkpT
R2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpCit7CisgICAgcmV0dXJuIHdyYXAo
bGV4aWNhbEdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LCBoYW5kbGUpOworfQorCitKU0M6OkpT
VmFsdWUgdG9KU05ld2x5Q3JlYXRlZChKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgUmVmPEZpbGVTeXN0ZW1IYW5kbGU+JiYgaGFuZGxlKQorewor
ICAgIGlmIChpczxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPihoYW5kbGUuZ2V0KCkpKQorICAg
ICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPihnbG9i
YWxPYmplY3QsIFdURk1vdmUoaGFuZGxlKSk7CisKKyAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxG
aWxlU3lzdGVtRmlsZUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworfQor
Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmgKaW5kZXggOTYzOTBhMDgwZTYxMTQ5ZGMxNmNiODZlYjlhOTA4ZWFiMGUx
OTZiNi4uODQ2ZTIzODUzMTA4MmNiMTJmNGMwMWJiMzA4NzQ4MmFmNjk2ZWQwNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmgKQEAgLTI2LDYgKzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiTW9kdWxlU2Ny
aXB0TG9hZGVyLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiU2NyaXB0QnVmZmVyLmgiCiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0RmV0Y2hlci5oIgog
I2luY2x1ZGUgIldvcmtlclNjcmlwdExvYWRlckNsaWVudC5oIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKaW5kZXggN2M1OGE0NmMyNDIw
NTgyMGFiMDEwOWMxZTUzY2M2ZGVhZGJlYmY4OC4uYTc3NzRlZGM0ZWYyZDkwZmRlZDBlMDQyOGZj
YTc0ODU0Zjk1ZWQ0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJKb2IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckpvYi5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpZiBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckpvYkNsaWVu
dC5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JEYXRhLmgiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5o
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44ZmMzNTJlODRiNTQyMzliYTI4NmU0NjE0YWYzODI3M2Y5MTZh
YTJjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApAQCAtMCwwICsxLDcyIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNp
bmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBj
bGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhfdCB7CisgICAgRW1wdHksCisgICAg
RmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1lLAorICAgIEludmFsaWRNb2RpZmljYXRpb24s
CisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25vd24KK307CisKK2lubGluZSBXZWJDb3JlOjpF
eGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
ciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9yKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRp
b25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNv
ZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNv
ZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhj
ZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1W
YWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSwKKyAgICAgICAgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQsCisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gsCisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgorICAgID47Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzMTQ0ZTk5
YmEyNDI1YzU4MzNmZDUzNGE0YWMyOWZjNzBjNWI4YzQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUu
Y3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lz
dGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgi
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgT1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFy
IHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0
b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBl
LCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgbmFtZSkKKyAgICA6IG1faWRlbnRp
ZmllcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI6OmdlbmVyYXRlKCkpCisgICAg
LCBtX21hbmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAg
ICAsIG1fcGF0aChwYXRoKQorICAgICwgbV9uYW1lKG5hbWUpCit7CisgICAgQVNTRVJUKCFtX3Bh
dGguaXNFbXB0eSgpKTsKKworICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjpt
YWtlQWxsRGlyZWN0b3JpZXMobV9wYXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVt
OjpmaWxlRXhpc3RzKG1fcGF0aCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbTo6b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Bl
bk1vZGU6OldyaXRlKTsKKyAgICAgICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7Cisg
ICAgfQorfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIHBhdGggPSBt
X21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlv
bkhhbmRsZXIobV9wYXRoID09IHBhdGgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpyZXF1ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgVHlw
ZSB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAobV90eXBlICE9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJl
Y3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaCk7CisKKyAgICBpZiAoIW1fbWFuYWdl
cikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0aHVi
LmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFsaWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUgPT0g
Ii4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1lLmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpJbnZhbGlkTmFtZSk7CisKKyAgICBhdXRvIHBhdGggPSBGaWxlU3lzdGVtOjpw
YXRoQnlBcHBlbmRpbmdDb21wb25lbnQobV9wYXRoLCBuYW1lKTsKKyAgICBtX21hbmFnZXItPmNy
ZWF0ZUhhbmRsZShjb25uZWN0aW9uLCB0eXBlLCBwYXRoLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29u
c3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgcmVx
dWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RmlsZSwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICByZXF1ZXN0Q3JlYXRlSGFu
ZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpEaXJlY3Rvcnks
IG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sIHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmIChtX3R5cGUgIT0gVHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaCk7CisKKyAgICBhdXRvIHBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21w
b25lbnQobV9wYXRoLCBuYW1lKTsKKyAgICBhdXRvIHR5cGUgPSBGaWxlU3lzdGVtOjpmaWxlVHlw
ZShwYXRoKTsKKyAgICBpZiAoIXR5cGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihmYWxzZSwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5kKTsKKworICAgIHN3
aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVn
dWxhcjoKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0
ZUZpbGUocGF0aCksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKKyAgICBjYXNlIEZp
bGVTeXN0ZW06OkZpbGVUeXBlOjpEaXJlY3Rvcnk6CisgICAgICAgIGlmICghZGVsZXRlUmVjdXJz
aXZlbHkpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbTo6
ZGVsZXRlRW1wdHlEaXJlY3RvcnkocGF0aCksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5
KTsKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW06OmRlbGV0ZU5v
bkVtcHR5RGlyZWN0b3J5KHBhdGgpLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0eSk7Cisg
ICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5
KTsKKyAgICB9Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlc29sdmUoRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9tYW5hZ2VyKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gcGF0aCA9IG1fbWFuYWdlci0+Z2V0UGF0
aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVu
a25vd24pOworCisgICAgaWYgKCFwYXRoLnN0YXJ0c1dpdGgobV9wYXRoKSkKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RW1wdHkpOworCisgICAgYXV0byByZXN0UGF0aCA9IHBhdGguc3Vic3RyaW5nKG1f
cGF0aC5sZW5ndGgoKSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIocmVzdFBhdGguc3BsaXQocGF0
aFNlcGFyYXRvciksIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkVtcHR5KTsKK30KKworfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5
YmZjOTc4ZDBiNzUzY2ZjOTczNDk5MmU3MWRmNzcwY2U0ZTJiOGUKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLmgiCisKKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworZW51bSBjbGFzcyBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhfdDsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUsIFdl
YWtQdHJGYWN0b3J5SW5pdGlhbGl6YXRpb246OkVhZ2VyPiB7CisgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CitwdWJsaWM6CisgICAgZW51bSBjbGFzcyBUeXBlIDogYm9vbCB7IEZpbGUsIERp
cmVjdG9yeSB9OworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlciYsIFR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBuYW1lKTsK
KworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgY29uc3QgU3RyaW5nJiBwYXRoKCkgY29u
c3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbiYsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOwor
ICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vy
c2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisKK3ByaXZhdGU6CisgICAgdm9pZCByZXF1
ZXN0Q3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFR5cGUsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9w
dGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4sIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IpPiYmKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBt
X2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFu
YWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBt
X25hbWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEy
NjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5o
CkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
PHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Uy
MzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUg
ImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIK
KworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
JiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikp
OworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsK
K30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFu
ZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAg
IEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVz
LnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hh
bmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFuZGxlLmdldCgpOworCisg
ICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2Fm
ZjZjMTFjZWYxM2JjM2NjN2YwZjI4ODAyMzI1MDdiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1
YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCBy
ZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdl
dEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgor
ICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTAz
NGRhNTBhYmZmMWYwOWY3MmE0ZTI3MDlkYmY1ZDZiMTkzMGYxZgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuY3BwCkBAIC0wLDAgKzEsOTkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3RyeSkKKyAgICA6IG1fcGF0
aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9yZWdpc3RyeShyZWdpc3RyeSkKK3sKK30KKworRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCkKK3sKKyAg
ICBmb3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVn
aXN0cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24s
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
PiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8g
ZmlsZUV4aXN0cyA9IEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVh
dGVJZk5lY2Vzc2FyeSAmJiAhZmlsZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6RmlsZU5vdEZvdW5k
KTsKKworICAgIGlmIChmaWxlRXhpc3RzKSB7CisgICAgICAgIGF1dG8gZXhpc3RpbmdGaWxlVHlw
ZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAgICAgICBpZiAoIWV4aXN0aW5nRmls
ZVR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgICAgICBhdXRvIGV4aXN0
aW5nSGFuZGxlVHlwZSA9IChleGlzdGluZ0ZpbGVUeXBlLnZhbHVlKCkgPT0gRmlsZVN5c3RlbTo6
RmlsZVR5cGU6OlJlZ3VsYXIpID8gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUg
OiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OworICAgICAgICBpZiAo
ZXhpc3RpbmdIYW5kbGVUeXBlICE9IHR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0
Y2gpOworICAgIH0KKworICAgIGF1dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZT4oKnRoaXMsIHR5cGUsIHBhdGgsIG5hbWUpOworICAgIGF1dG8gbmV3SGFu
ZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRpZmllcigpOworICAgIG1faGFuZGxlc0J5
Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbi51bmlxdWVJRCgpLCBbJl0geworICAgICAgICBt
X2Nvbm5lY3Rpb25zLmFkZChjb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3ItPnZh
bHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVySGFu
ZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5hZGQo
bmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBjb21wbGV0aW9u
SGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpFbXB0
eSk7Cit9CisKK2NvbnN0IFN0cmluZyYgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQYXRo
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGF1
dG8gaGFuZGxlID0gbV9oYW5kbGVzLmZpbmQoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIGhhbmRs
ZSA9PSBtX2hhbmRsZXMuZW5kKCkgPyBlbXB0eVN0cmluZygpIDogaGFuZGxlLT52YWx1ZS0+cGF0
aCgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3Nl
ZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKGF1dG8gaGFuZGxlcyA9
IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQoKSk7IGhhbmRs
ZXMgIT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKSB7CisgICAgICAgIGZvciAoYXV0byBo
YW5kbGVJZGVudGlmaWVyIDogaGFuZGxlcy0+dmFsdWUpIHsKKyAgICAgICAgICAgIG1faGFuZGxl
cy5yZW1vdmUoaGFuZGxlSWRlbnRpZmllcik7CisgICAgICAgICAgICBhdXRvIGhhbmRsZSA9IG1f
aGFuZGxlcy50YWtlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICAgICAgbV9yZWdpc3RyeS51
bnJlZ2lzdGVySGFuZGxlKGhhbmRsZUlkZW50aWZpZXIpOworICAgICAgICB9CisgICAgICAgIG1f
aGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUoaGFuZGxlcyk7CisgICAgICAgIG1fY29ubmVjdGlv
bnMucmVtb3ZlKGNvbm5lY3Rpb24pOworICAgIH0KK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBjcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkRpcmVjdG9yeSwgbV9wYXRoLCBlbXB0eVN0cmluZygpLCB0cnVlLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3ZDFiOWUyZDI3NzI2ODExNDIxODYyZWJi
NzE4MjA3OTk0NjcyNTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKQEAgLTAsMCArMSw1NSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGUuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIu
aCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAg
IGV4cGxpY2l0IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CisgICAgfkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cigpOworCisgICAgdm9pZCBjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OlR5cGUsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6
b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcik+JiYpOworICAgIGNvbnN0IFN0cmluZyYgZ2V0UGF0aChGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNv
bm5lY3Rpb24mKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworCitwcml2YXRlOgorICAg
IFN0cmluZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9y
ZWdpc3RyeTsKKyAgICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7
CisgICAgSGFzaE1hcDxJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBIYXNoU2V0PEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4+IG1faGFuZGxlc0J5Q29ubmVjdGlvbjsKKyAgICBI
YXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRy
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDM2MmFmYjg4NTJhZmY0
ODA5OWUwOWNmNTVlN2VjNjczNWU1MzMzYzcuLjI3NTcyNDU1ZjVkNmE4MTU4YzZiMDBiMTRjMmQ0
ZGM1YWY2ZDllNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw4
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgog
I2luY2x1ZGUgPHBhbC9jcnlwdG8vQ3J5cHRvRGlnZXN0Lmg+CkBAIC00MSw2ICs0Myw3IEBAIFJl
ZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Y3JlYXRlKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JCiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgcGF0aCkK
ICAgICA6IG1fc2Vzc2lvbklEKHNlc3Npb25JRCkKICAgICAsIG1fcXVldWUoV29ya1F1ZXVlOjpj
cmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuU3RvcmFnZSIpKQorICAgICwgbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5KG1ha2VVbmlxdWVSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeT4oKSkKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCkBAIC01Myw2
ICs1Niw4IEBAIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyCiAgICAgfSk7CiB9CiAKK05ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsKKwogdm9p
ZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0
aW9uKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOwpAQCAtNjUsNiArNzAsMTAgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJgogICAg
IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtR
dWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNz
YWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0
ZWRUaGlzID0gUmVmIHsgKnRoaXMgfSwgcHJvdGVjdGVkQ29ubmVjdGlvbiA9IFJlZiB7IGNvbm5l
Y3Rpb24gfV0oKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBt
X2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2lu
U3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVkQ29ubmVjdGlvbi5nZXQo
KSk7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNvbnN0IFN0cmluZyYgc3Ry
aW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsNiArMTIwLDU5IEBAIHZvaWQgTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYg
b3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiB9CiAKK3ZvaWQg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVj
dGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGxvY2FsT3JpZ2lu
U3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIobV9maWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmdldCgpKS5nZXREaXJlY3RvcnkoY29ubmVjdGlvbiwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRI
YW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdldElk
ZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXI+
LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBh
dXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxl
KGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoc3RkOjpudWxsb3B0LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsK
KworICAgIGhhbmRsZS0+Z2V0RmlsZUhhbmRsZShjb25uZWN0aW9uLCBuYW1lLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkt
PmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
VW5rbm93bik7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBu
YW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQor
Cit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBk
ZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sLCBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIGhhbmRsZSA9
IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIp
OworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFs
c2UsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZW1v
dmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3Rk
OjpvcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFuZGxlLT5yZXNvbHZlKHRhcmdldElk
ZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwogdm9pZCBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhl
MTdiNjJlZGZjMGJiY2FlMDg5MC4uYmUwYWQ4ZWY1MGExYjBhYzYzNzlkOGI5OTA0YjUzM2QzNGY2
YTNkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05l
dHdvcmtTdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29y
ZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICsz
OCw5IEBAIHN0cnVjdCBDbGllbnRPcmlnaW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFz
cyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVl
dWVNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eTsKKworY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29u
bmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMg
UmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdlcj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBT
dHJpbmcmIHBhdGgpOwogCkBAIC00OCwxNCArNTIsMjEgQEAgcHVibGljOgogCiBwcml2YXRlOgog
ICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBw
YXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKCk7CiAgICAgT3JpZ2luU3RvcmFnZU1h
bmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAoaW1wbGVtZW50ZWQgYnkgZ2Vu
ZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24m
LCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3NhZ2UgSGFuZGxlcnMKKyAgICAvLyBNZXNz
YWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAgICAgdm9pZCBwZXJzaXN0
KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24m
LCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0
ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiwgRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJ
UEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5
SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXI+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yKT4mJik7CisgICAgdm9pZCByZW1v
dmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
IHJlbW92ZWQsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKKyAgICB2b2lkIHJlc29sdmUo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8
U3RyaW5nPj4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IpPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lv
bklEIG1fc2Vzc2lvbklEOwogICAgIFJlZjxXb3JrUXVldWU+IG1fcXVldWU7CkBAIC02Myw2ICs3
NCw4IEBAIHByaXZhdGU6CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CiAgICAgSGFzaE1h
cDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFu
YWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnM7CiAgICAgSGFzaE1hcDxXZWJDb3Jl
OjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1f
c2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKworICAgIFVuaXF1ZVJlZjxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4g
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUwZThkZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3
OTk1NTAuLjZhYWZjOWU3NWRjNGFlOGFhMDY0NTM4NTE3ZTBjNzhjNmM1NGE0ODQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjYsNCArMjYsMTAgQEAK
ICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgewogICAgIFBlcnNpc3RlZChzdHJ1
Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBBc3lu
YwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChi
b29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBX
ZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4gaWRlbnRpZmllciwgZW51bTp1aW50OF90
IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5bmMgV2FudHNDb25uZWN0
aW9uCisgICAgSXNTYW1lRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4gKGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVI
YW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
ciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFs
PFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBl
bnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBX
YW50c0Nvbm5lY3Rpb24KKyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyPiBpZGVudGlmaWVyLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1v
dmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlm
aWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkgLT4gKGJvb2wgcmVtb3Zl
ZCwgZW51bTp1aW50OF90IFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikgQXN5
bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRh
cmdldElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBwYXRoLCBl
bnVtOnVpbnQ4X3QgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yIGVycm9yKSBBc3luYwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdp
blN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggNzVhMWFlZDI0OWY5Mjg1OTkwZjY2Y2E5
NjgxNzM3ODhlZjQ3ZDA1NC4uZTNjN2U2NTE4MzhhMzEzOGM5M2JmNjliYmU1NTZhY2Q0ZmVlY2Uw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdp
blN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0yNiw2ICsyNiw5IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKIAorI2luY2x1
ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGVudW0gY2xhc3Mg
T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXRNb2RlIDogYm9vbCB7IEJlc3RFZmZv
cnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwzNCBAQCBwdWJsaWM6CiAgICAgICAgICwg
bV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewogICAgIH0KKwogICAgIFN0b3JhZ2VCdWNr
ZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7IH0KICAgICB2b2lkIHNldE1vZGUo
U3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUgPSBtb2RlOyB9CisKKyAgICB2b2lkIGNv
bm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIHsKKyAgICAg
ICAgaWYgKG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQor
CisgICAgU3RyaW5nIHR5cGVTdG9yYWdlUGF0aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlm
aWVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8g
ZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jv
b3RQYXRoLCBzdG9yYWdlSWRlbnRpZmllcik7CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgeworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBt
YWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxl
U3lzdGVtIiksIHJlZ2lzdHJ5KTsKKworICAgICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOworICAgIH0KKwogcHJpdmF0ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAg
ICBTdHJpbmcgbV9pZGVudGlmaWVyOwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0
b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZmb3J0IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkK
QEAgLTUzLDE0ICs3OCwyOSBAQCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1h
bmFnZXIoU3RyaW5nJiYgcGF0aCkKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9y
YWdlTWFuYWdlcigpID0gZGVmYXVsdDsKIAotdm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdCgpCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6
Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAg
ICAgICBtX2RlZmF1bHRCdWNrZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisK
K09yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdl
cjo6ZGVmYXVsdEJ1Y2tldCgpCiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAg
IGlmICghbV9kZWZhdWx0QnVja2V0KQogICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5p
cXVlPFN0b3JhZ2VCdWNrZXQ+KG1fcGF0aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0
QnVja2V0LT5zZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1
cm4gKm1fZGVmYXVsdEJ1Y2tldDsKK30KKwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdCgpCit7CisgICAgbV9wZXJzaXN0ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5z
ZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyJiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJl
dHVybiBkZWZhdWx0QnVja2V0KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDll
NDIxNWIzYzcwMGJkNDk5ZDA2ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLmJjNjJjZjQyMmY1YTM1ZGQy
ZWM0YmJhNjg1NjFmNzFlMTBiNjg5NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwy
MiArMjUsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAog
bmFtZXNwYWNlIFdlYktpdCB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnk7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyIHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBl
eHBsaWNpdCBPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2lu
U3RvcmFnZU1hbmFnZXIoKTsKIAorICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5l
Y3Rpb24mKTsKICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVk
OyB9CiAgICAgdm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBm
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYp
OwogCiBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwog
ICAgIGNsYXNzIFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tl
dCgpOwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tl
dDsKICAgICBTdHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkKaW5kZXggZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWViZjcyYjE1Yi4uM2Y5
MzZkMjUyOTAyZTUyNDc4ZWI4MTEwOWJlMjY4ZGEwOTVlNWI4YyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3Ro
YXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVu
dFdvcmxkSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJ
RCcsCiAgICAgICAgICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRl
bnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAg
ICAgICdXZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRl
eCA5M2RiYTZjZDk2MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZj
OGI5NWNmZDEzOWEwZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1Nv
dXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUs
OSBAQCBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBu
by11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24uY3BwIEBuby11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZl
clRvQ29udGV4dENvbm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2Uv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05l
dHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3Rv
cmFnZU1hbmFnZXIuY3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250
ZW50L1dlYlVzZXJDb250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGlj
YXRpb24vV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRo
ZW50aWNhdGlvbi9XZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTkxZjc2YjM4OTRl
OTE3YzUyN2M0ZjkzOGZlZWQ4NjNjNzcwMWM2OS4uNDJiZWNhOWQ4ZjRmMDc2NmZlZGJiMjkxMzI3
MTE0ZjZiZTZhNDBhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0xNDY5LDYgKzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAw
RUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAw
RUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJ
CTkzMDg1REUwMjZFNUJDRkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJC
QkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEy
NkU1QkQxMzAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAy
MDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMx
MkJBRDUyNkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMx
MDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFE
NjI2RjMzQzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3
MDA5MDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8q
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1
MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdL
SW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4
MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1t
ZWRpYXRlQWN0aW9uVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk5MzIzNjExRTFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9s
bGJhclN0eWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5MzIzNjExRDFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUs
NiArMTQ4OCw3IEBACiAJCTkzNTZGMkRGMjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0
b3JlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
QkEwNERGMjE1MUFERjQwMDdGNDU1RiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJ
OTM1NkYyRTAyMTUyQjc1MjAwRTZENURGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlv
bi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JB
MDRERDIxNTFBREYzMDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNw
cCAqLzsgfTsKIAkJOTM1NkYyRTEyMTUyQjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVj
dGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
M0JBMDRFMTIxNTFBREY0MDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsg
fTsKKwkJOTM1QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lz
dHJ5LmggKi87IH07CiAJCTkzNUVFQjlCMTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tG
b3J3YXJkTGlzdEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzNUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlz
dEl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQk5MzVFRUI5RjEyNzc2MUFDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3
NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJE
QjExQSAvKiBTdG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIx
MUEgLyogU3RvcmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkw
NCw2ICs0OTA4LDE0IEBACiAJCTkzMDg1RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlc1JlcGxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZG
MDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1
QTMwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUz
QzAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1t
ZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0
aW9uVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVB
Y3Rpb25UeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMw
LDggQEAKIAkJOTM0MjU4OEYyNTU1RENBNTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxp
dGllcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRURE
IC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTM0QjcyNDMxOUY1QjlCRTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBl
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlw
ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0
OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJOTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRM
aXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMz
MjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURD
MjI2RTFCQjY1MDAwRUM2QTcgLyogc3RvcmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCisJCQkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IuaCAqLywKKwkJCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5
MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5jcHAgKi8sCisJCQkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkuaCAqLywKKwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0
NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUx
QkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVE
QzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkz
MDg1REM3MjZFMUM2RUUwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMu
aW4gKi8sCkBAIC0xMDAwNiw2ICsxMDAyOCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRB
NTdEIC8qIGNvY29hICovLAogCQkJCTJEMjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8s
CiAJCQkJQkMxMTFBREUxMTJGNUI5QTAwMzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2
RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJ
CQkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaCAqLywKIAkJCQkxQTcyODQ0NDE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29u
dmVyc2lvbi5jcHAgKi8sCiAJCQkJMUE3Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25T
dGF0ZUNvbnZlcnNpb24uaCAqLywKIAkJCQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hh
cmVhYmxlQml0bWFwVXRpbGl0aWVzLmNwcCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJ
CQkJMUFBNTc1RkIxNDk2QjUyNjAwQTRFRTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJNTcyRUJCRDcyNTM3RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJv
bHNGb3JUQVBJLmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAg
LyogRmlkb1NlcnZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgx
QTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEy
QkFENjI2RjMzQzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBG
RERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
MEI5NjYxQTE4RTI1QUUxMDBDRTFGODggLyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMUE5MEMxRjQxMjY0RkQ3MTAwM0U0NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlDNTlDNEE1OTE4QjgxMTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZv
cm1hdGlvbi5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmI1Zjk1NGFiYzUyNWQzYzk3MGNiYzNhYmM0NmI5
M2Q0MWEzOWUxMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsx
LDEzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yLmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNp
bmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbk9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk+IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25u
ZWN0aW9uKQoreworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHkoaWRlbnRpZmllciwgY29ubmVjdGlvbikpOworfQorCitGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24pCisgICAgOiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKKyAgICAsIG1fY29ubmVjdGlvbigm
Y29ubmVjdGlvbikKK3sKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpj
b25uZWN0aW9uQ2xvc2VkKCkKK3sKKyAgICBtX2Nvbm5lY3Rpb24gPSBudWxscHRyOworfQorCit2
b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1I
YW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0
aW9uT3I8Ym9vbD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5l
Y3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRp
b24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisg
ICAgYXV0byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7Cisg
ICAgaWYgKCFpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFs
c2UpOworCisgICAgaWYgKG1faWRlbnRpZmllci50b1VJbnQ2NCgpID09ICppZGVudGlmaWVyKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CisKKyAgICBtX2Nvbm5lY3Rp
b24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpJ
c1NhbWVFbnRyeShtX2lkZW50aWZpZXIsIG1ha2VPYmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGU+KCppZGVudGlmaWVyKSksIFtjb21wbGV0aW9uSGFu
ZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlc3VsdCkgbXV0YWJsZSB7
CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3VsdCk7CisgICAgfSk7Cit9CisKK3ZvaWQg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RmlsZUhhbmRsZShTdHJpbmcmJiBuYW1l
LCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93
bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldEZpbGVI
YW5kbGUobV9pZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byBoYW5kbGVJZGVudGlmaWVyLCBhdXRvIGVycm9y
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFoYW5kbGVJZGVudGlmaWVyKQorICAgICAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4
Y2VwdGlvbkNvZGUoZXJyb3IpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikK
KyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24g
eyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAg
ICAgICAgYXV0byBoYW5kbGUgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUo
aGFuZGxlSWRlbnRpZmllci52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShXVEZNb3Zl
KG5hbWUpLCBXVEZNb3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgYm9v
bCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNl
cHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93
bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldERpcmVj
dG9yeUhhbmRsZShtX2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9LCBuYW1lLCBjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGhhbmRsZUlkZW50aWZpZXIsIGF1dG8g
ZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWhhbmRsZUlkZW50aWZpZXIpCisgICAgICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVy
dFRvRXhjZXB0aW9uQ29kZShlcnJvcikgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0
aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2Vw
dGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsK
KworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNy
ZWF0ZShoYW5kbGVJZGVudGlmaWVyLnZhbHVlKCksICptX2Nvbm5lY3Rpb24pOworICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVh
dGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShoYW5kbGUpKSk7CisgICAgfSk7Cit9CisKK3ZvaWQg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFtZSwg
Ym9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpF
eGNlcHRpb25Pcjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1f
Y29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4
Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7
CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0ZVJl
Y3Vyc2l2ZWx5KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cildKGJvb2wgcmVtb3ZlZCwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVt
b3ZlZCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNl
cHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKworICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0pOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OnJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpV
bmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0byBpZGVudGlm
aWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYgKCFpZGVudGlm
aWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoVmVjdG9yPFN0cmluZz4geyB9
KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6OlJlc29sdmUobV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRp
ZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikp
LCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byBw
YXRoLCBhdXRvIGVycm9yKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFwYXRoKQorICAgICAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRU
b0V4Y2VwdGlvbkNvZGUoZXJyb3IpIH0pOworCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdU
Rk1vdmUocGF0aC52YWx1ZSgpKSk7CisgICAgfSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktp
dAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zNDBiMzIxNGE0YzY2OWEyMDkwZjAzZWZiNjkxODY1MWY1YjE0Mzk1Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuaApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdt
YSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIK
KyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg+CisKK25hbWVzcGFjZSBJ
UEMgeworY2xhc3MgQ29ubmVjdGlvbjsKK30KKworbmFtZXNwYWNlIFdlYkNvcmUgewordGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOworfQorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSBmaW5hbCA6IHB1Ymxp
YyBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJl
ZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25D
bG9zZWQoKTsKKworcHJpdmF0ZToKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJik7CisKKyAg
ICAvLyBGaWxlU3lzdGVtSGFuZGxlSW1wbAorICAgIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgeyByZXR1cm4gbV9pZGVudGlmaWVyLnRvVUludDY0KCk7
IH0KKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgZmluYWw7Cisg
ICAgdm9pZCBnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nh
cnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNv
cmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RGly
ZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZW1vdmVFbnRy
eShTdHJpbmcmJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lk
IHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJikgZmluYWw7CisKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgIFJlZlB0
cjxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKaW5kZXggODg5NTA4YWE2YzczMzIx
YzQzM2RiNTdkOTExNzNlNzA0Njg3ZTQxYS4uNzRhNjJhZDc5ZGQ2MDFhNWQ0OThkOWYzZjJmYzUw
MzY0MDZmMTM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCkBAIC0yNiw2ICsy
Niw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViU3RvcmFnZUNvbm5lY3Rp
b24uaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCIKICNpbmNs
dWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFn
ZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKQEAgLTQ4LDYgKzQ5
LDIxIEBAIHZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50
T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuCiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpQZXJzaXN0KG9yaWdp
biksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAordm9pZCBXZWJTdG9yYWdlQ29u
bmVjdGlvbjo6ZmlsZVN5c3RlbUdldERpcmVjdG9yeShXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiBv
cmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdl
YkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBhdXRvJiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5z
dXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOworICAgIGNvbm5lY3Rp
b24uc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1HZXREaXJlY3Rvcnkob3JpZ2luKSwgW3dlYWtDb25uZWN0aW9uID0gbWFrZVdlYWtQ
dHIoY29ubmVjdGlvbiksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKGF1dG8gaWRlbnRpZmllciwgYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlm
ICghaWRlbnRpZmllcikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJD
b3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yKSB9KTsKKworICAg
ICAgICBpZiAoIXdlYWtDb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGltcGwgPSBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoKmlkZW50aWZpZXIsICp3ZWFrQ29ubmVjdGlvbik7Cisg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlOjpjcmVhdGUoeyB9LCBXVEZNb3ZlKGltcGwpKSk7CisgICAgfSk7Cit9CisKIElQ
Qzo6Q29ubmVjdGlvbiYgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNvbm5lY3Rpb24oKQogewogICAg
IHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5l
Y3Rpb24oKS5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oCmluZGV4IDFj
MGU2NjM2OWI1NmVkYjcwZTkzYTg4OWUzMjUwMzU2NjY5MzM2ZTUuLjQ3NzRhN2IwNGIxY2NkODBm
MjE0OTk4MjZkNTQ3NzQ2MDNjNzE2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oCkBA
IC0zMSw2ICszMSwxMSBAQCBuYW1lc3BhY2UgSVBDIHsKIGNsYXNzIENvbm5lY3Rpb247CiB9CiAK
K25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25P
cjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit9CisKIG5hbWVzcGFjZSBXZWJL
aXQgewogCiBjbGFzcyBXZWJTdG9yYWdlQ29ubmVjdGlvbiBmaW5hbCA6IHB1YmxpYyBXZWJDb3Jl
OjpTdG9yYWdlQ29ubmVjdGlvbiB7CkBAIC00MCw2ICs0NSw3IEBAIHB1YmxpYzoKIHByaXZhdGU6
CiAgICAgdm9pZCBwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOwogICAgIHZvaWQgcGVyc2lzdChXZWJDb3JlOjpD
bGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7Cisg
ICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFsOwogCiAgICAgSVBDOjpDb25u
ZWN0aW9uJiBjb25uZWN0aW9uKCk7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM1MWExZjhlZDc2MzRkZGUxOTFiNDBi
OTZiNTFlMzI1ZDAzMTA1ODIuLmY3OTNhMDMwOWJkMjI1YWViMzkwNDg0Y2I3OWE2OGM3YWZlYTRm
M2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOS0yMCAgU2lodWkgTGl1ICA8c2lodWlf
bGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBzdXBwb3J0IGZvciBGaWxlIFN5
c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RF
eHBlY3RhdGlvbnM6CisgICAgICAgICogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9y
eS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWw6IEFkZGVkLgorCiAy
MDIxLTA5LTIwICBBeXVtaSBLb2ppbWEgIDxheXVtaV9rb2ppbWFAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT04gKHIyODExMDI/KTogWyBNYWMgXSBtZWRpYS90cmFjay90cmFjay1pbi1i
YW5kLmh0bWwgaXMgYSBmbGFreSB0aW1lb3V0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cK
aW5kZXggMzQzN2E1ZTE0N2Q3ZGRhNDBkMWJlOWJjYzcxMDlhMjY4MDVhZTJhYy4uZTAwMmQxYjNm
YmQzMmY1MTgwZTViN2ExMzFlNTU1ZDUyYTk0ZWE4ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjEtMDktMjAgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0
ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRl
eGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1Nh
bWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZy
YW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRs
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRl
cmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50
ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRG
aWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVh
bS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVT
dHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVG
aWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisKIDIwMjEtMDktMjAgIEFkaXR5YSBL
ZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBpbnB1dC1z
ZWN1cml0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZjVkY2FjZDFlMmExNzNlZWRmYWJjMDE2NGJk
Y2ZmMWM3ZWE5ZTQ3Yy4uZTRiM2RjYTQyNTVkMzBlYzliYWU4MGIyMTA4YzU3ZmE3MTI3NmE2MyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMDAsNiArMjAwLDcgQEAgZmFzdC9zcGVlY2hyZWNvZ25p
dGlvbi9pb3MvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1p
c3Npb25zLyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdl
LyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3MvIFsgU2tpcCBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvIFsgU2tpcCBdCiAKICMg
YXBwLXByaXZhY3ktcmVwb3J0IHRlc3RzIHJlbHkgb24gV2ViS2l0QWRkaXRpb25zCiBodHRwL3Rl
c3RzL2FwcC1wcml2YWN5LXJlcG9ydC8gWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1
ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4u
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA2OTBkMjc5MzQyZTZhOGQ5NDk5NjkxYjE5
ZjVjZDk2NjRiYjQwMDk2Li4xYjRkYzhiNmRhODI2ZDVkZjIzZTdmYTg5N2ZkMWVhNjczYjRlZDJl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBA
IC0yLDUgKzIsNSBAQAogUEFTUyBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCBiZSB1bmRlZmlu
ZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMuCiBQQVNTIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUg
bXVzdCBiZSB1bmRlZmluZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMuCiBGQUlMIG5hdmlnYXRvci5z
dG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWpl
Y3QgaW4gYSBzYW5kYm94ZWQgaWZyYW1lLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0Rp
cmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0Rp
cmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046IFR5cGVFcnJvciIKLUZBSUwgbmF2aWdhdG9yLnN0
b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVj
dCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
c2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAi
bmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk6IFJFSkVDVEVEOiBOb3RTdXBwb3J0ZWRF
cnJvciIKK0ZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJl
Y3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDog
U2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046
IFR5cGVFcnJvciIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDQxMjRiN2JlNGRjZGFhZDRhYjkzMDc5ZGIyZGMwZGUxYzMyNzJlYjQuLjIxNWFiNjYwYmQw
NGJlYmViNjU0ZjgyZjM2ZWExMzM3ZTBiMDJhNzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiAKLUZBSUwgU3RvcmUgaGFuZGxlIGlu
IEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5k
IHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4ZWREQi4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBh
bmQgcmVhZCB1c2luZyBhIGN1cnNvci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWRE
QiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5l
dyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBo
YW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCB1c2luZyBhIGN1cnNv
ci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5k
ZXhlZERCIHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVF
bnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggODE1ZTc1
ZjYzMmQ0ZWZjYzhkNmIyMTkzNDMyYmEwY2NmZDkxNDQzOC4uODM3ZWFlMTA2MjhlZGY5M2YxNzU2
OGNiOTIzMGJhMmNiOGQzMzVjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRl
bnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVz
IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNT
YW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBkaXJlY3RvcnkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50
aWNhbCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxz
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3Ig
ZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUg
aW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGRp
cmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMgcmV0dXJucyB0
cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRp
ZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2Ft
ZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRy
eSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVy
bnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBp
biBhIGRpZmZlcmVudCBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3Rv
cnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9h
ZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGUzY2E3YzQ2ODgyNTBmNDQ3MTU4NjUyMmE4ODljZGVh
ZmVmZDFmODQuLjM5NWVjYTU1NGJkZDdiOGFiMDIyZWQ1MmM5MmQ0NDMxZGMxMmEzYzIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1C
cm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZyYW1l
LCBkZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJy
b2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2Vydmlj
ZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3YWY0
MTE4MzFkYzBmYjZjYjI2NWI4NDNiMmIwY2VmNzAzYTAwNGMzLi40YjFjNWJlM2I3N2Q4ZjdiNjMw
NDZmOWEwYTEyZGVhNmM0ODI4ODE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Ut
RXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1GQUlM
IEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQg
aW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWls
IHRvIHNlbmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5k
b3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlmcmFtZS4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byBhIGRhdGEgVVJJ
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQg
bWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBj
cm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2lu
ZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cmlu
ZGV4IDUzZTkwZTIzYzQ5MWY1ODhkMWI1YjZlYmVjMjEyMmQ3YWNjZTgwNmIuLjgyMWM2MWM5ZjRm
MWVhNGZiMTVjZTExMWQ5ZmMyZjcwNmEwYmJjNGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZTVkZWMwOGE5NTNjYTQwNmUxYTRmNTk4ZGQ4ZTQ0
ZjBhYTc5NzdiNS4uYTkzODQ3ZDAwMzViM2JmN2VhYjU1OWUwNDgwNDVkMDZjYjA2YjU4MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQt
d2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1l
IG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9y
aWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CmluZGV4IDQ1MTA2NWUzMjJkYWZlMDRiZWFlMjE0OWU1MTQwYWE2NWMzNmY3MGQuLjgx
ZjZmNjEwN2Y0YWZmYTE5YzM4OGVlMWNjOGQwNGIxYTNkODRlZGYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGVkaWNhdGVkIHdvcmtlci4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2hhcmVkICB3b3JrZXIuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2hhcmVkICB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1l
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cmlu
ZGV4IDg2NDVkOTNlZTU3MjE1NzliYjllZmM1MjgyNDY0NDQ5NzI1YzEzZTcuLjNjZTllODMyMjBl
ZGQyYmJmYTc0NmQ0Y2ViMjk0ZDY3MGE3ZDVjNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBA
CiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQg
c2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGFu
IGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRv
d3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggZjA5NTk5NTg5NjNmMmY0ZDZhOTdlOGE3YmE3Mzc0ZmI1MWU4MmQ0Zi4uNmQ5NjI2NTg0
MTk4YmU5MDc4MWVmYzk3YjFkMGZkYzhmYjFmOGE4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEs
NSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNh
bmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2Ft
ZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3Jr
ZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDcyZmYzZjU3NDEyZGQwOGVjNmE0YmYzYzA1ZmMzNjhiODlhZmFhNjYuLjI0YjQ2ZGQ1
OWFjYTA3OTA0ZmQ2N2I5OTExZjcwNzA2YWQ5YTI0YmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgZGVkaWNhdGVk
IHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
c2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA0Y2EwZjk0NzEwYzhlM2UwNWY5NWEwNzQ3MDljZDg3YTA3YjI4NTdkLi43ZTY2MWNlMGY3
OTM0ZjY5M2QyNmYzOTE3ZTA3Njg0MGU3MWNkZjljIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsOSBAQAogCi1GQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBh
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24g
YW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJl
YWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQg
ZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBh
IGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3Vs
ZCBpZ25vcmUgdGhlIHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVt
b3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIG5vbi1lbXB0eSBk
aXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBy
ZW1vdmUoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWIt
aXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIGZp
bGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggMWZjNDc0ODA2MjNlYWI5M2JjOTZhOTMxMGE3
YzU2NjNmODU4ODIzMC4uNzgxNzFmZjBlNDg3OGViNDg5OTAxNTA5Y2ViNDU4M2Q4NTdhNjY4OCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0
RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNy
ZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1
cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBk
aXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFkeSBleGlzdHMg
d2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZSgp
IHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVu
IHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9y
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9
dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0
aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdp
dGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVj
dG9yeUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFt
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgp
IHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERp
cmVjdG9yeUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdp
dGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSB3
aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxl
SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5k
ZXggMzM2ZTRkYzczOTFiMDgzZmQwNGFiYjgxNjRiZjI2MGIwY2VkMTVkOC4uYWU1NWQxMzRkMjc0
MjVlMDdjYTFjODZmYTY3YTZmZDRjZTg3ZjU0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdl
dEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMyBAQAogCi1G
QUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3Rpbmcg
ZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRs
ZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZvciBub24tZXhpc3RpbmcgZmls
ZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShj
cmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlz
dGluZyBmaWxlcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3RvcnkgYWxy
ZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3Rvcnkg
YWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5h
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgp
IHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUg
ZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVq
ZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZv
ciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJl
dHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3Rv
cnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9y
eSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4i
IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRy
dWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXgg
OTJiYTAwNjFjMTEyZGI5OWE2OTZjMDNmYjRhYjBhODcxMGFiM2JlMS4uZmUxZmZhOWM0NWJmNzg5
MThjNjhiZDgxMjI5ZDcyZWUwMzA2YTRjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9u
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKLUZBSUwgcmV0dXJuaW5n
IGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3QgY3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgQEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3Jr
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBlbnRyaWVzOiBmdWxsIGl0
ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB2YWx1
ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGtleXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdhcmJhZ2UgY29s
bGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJldHVybmluZyBl
YXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgQEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdv
cmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJh
dGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGtleXM6IGZ1bGwg
aXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXRlcmF0
aW9uIHdoaWxlIGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCBhYzZmYzE5NDg0NzljMTdkOThiMDM4Yjc0N2Q2YjkzMDZkYmMw
OTJjLi4yODE0NzIyNWJkYTg0OTI4ZGMzMjY3NjQxMDBhNDlmZmRhMmJjMDE4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTEg
KzEsMTEgQEAKIAotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5
IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1l
bXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQg
ZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNo
b3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVu
dHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxk
IGZhaWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZUVudHJ5
KCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJl
bW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBl
bXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVF
bnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJz
aXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4iIG5h
bWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVF
bnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxkIGZh
aWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDU1NzFmMTFkMWNmMDBkMTM5ZWZhOWY4ZGM2
ZThjNDJjMGIxYjMzNDAuLmY1ZTY1MWIxZWYxYzdmMTE5NWM2YTU3YTA3MjczNjQyMjcxM2MyNjEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJl
c29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEs
NiArMSw2IEBACiAKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5IGFycmF5IGZvciBzYW1lIGRp
cmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJl
dHVybnMgY29ycmVjdCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24tYXNjaWkgY2hhcmFjdGVycyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgbnVs
bCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCitGQUlMIFJlc29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3Rvcnkg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVj
dCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5z
IGNvcnJlY3QgcGF0aCB3aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3Qg
YSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxl
LWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhh
bmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDMzMDEwZDcxODQ1MjJiYjM3MDVlYjM4YjczNGEzZmEwZDI2ODY2ZmMuLjNiOGMwZDhk
YWIwMTgwZTkyM2M0NDM5N2Y2NDFjNjVkY2FlN2ZkOTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGlj
YXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5k
bGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhh
bmRsZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgQXR0ZW1wdCB0byBj
cmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZp
bGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmls
ZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggOWNmMDE5ZDI1Njlj
ZmY0OThjMTA0ZjE1YzdhZmFkYTFjMTk3YTZjNy4uZjdjMTcwNzNhZWVmZjlhYWYwYjcyOGNjYmUy
YWI4ZTFkZDYxYTU3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDQgKzEsNCBAQAogCi1GQUlMIGdldEZpbGUoKSBwcm92aWRlcyBhIGZpbGUgdGhhdCBjYW4g
YmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGUo
KSByZXR1cm5zIGxhc3QgbW9kaWZpZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgorRkFJTCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGUoKSByZXR1cm5zIGxhc3Qg
bW9kaWZpZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmls
ZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGEwNjkyNjYxZGQyM2Qx
MGMwOWZmZDU5ZTZkYmUwYjBjOGUyYzYwYmEuLmQxNTI2YzU5OTU4NjYyNWYzMTZhNzY3OThmNzAx
NzQ4Yjg0NmZlZTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFi
bGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEg
c3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBl
ZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRo
IHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2Fu
IGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25z
IGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcGxh
eXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIEJsb2IgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBh
cmFtIG9iamVjdCB3aXRoIHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIG11bHRpcGxl
IGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgbXVsdGlwbGUgb3Bl
cmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
cGxheXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
YWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0
YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBmOTdlODEy
ZDc3MmE2NTUxNTdhNWRhY2VmYzEzNWZjMDY2YjBhMjJjLi4zN2Y3YTY0YWU5YTVmMDFkZGQ4N2Y0
YWNkYTg3OWE1NGI2NjY0OGU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKQEAgLTEsMzEgKzEsMzEgQEAKIAotRkFJTCB3cml0ZSgpIHdpdGggYW4g
ZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQg
cG9zaXRpb24gdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2VjdXRpdmVseSBhcHBlbmRzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0
aG91dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBi
bG9iIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUo
KSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEg
dmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9uZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBz
dHJpbmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggdW5peCBsaW5l
IGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
d3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVt
cHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZlciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9z
ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWls
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiB0
cnVuY2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkg
b25lIGNsb3NlKCkgb3BlcmF0aW9uIG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFtIHBlcnNp
c3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNz
aW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3Jp
dGVQYXJhbXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogc2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFt
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBp
bnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVqZWN0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFu
IGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEg
YmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8g
YW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2Vj
dXRpdmVseSBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5kcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBw
b3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgYmxvYiBh
bmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0
ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBzdHJp
bmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdy
aXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJl
c2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEg
c3RyaW5nIHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRv
IGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgp
IHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWlj
IHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xv
c2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0
ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBhdG9taWMgd3JpdGVzOiB0cnVuY2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGFmdGVyIGNs
b3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3Jp
dGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFt
IHBlcnNpc3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0V3JpdGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2lu
ZyBzaXplIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJh
bXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIFdyaXRlUGFyYW1zOiBzZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3Ry
ZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdy
aXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDUwMDkyNTRhNGYx
MGUyNzkzYmQ2NGM4NDE5NTU5MjQ1MjEyZjJkMTEuLmUzODUxZmNhMzNlNGM5ZDgzOTYxOTFiNmQx
ZGJhZWFjZjBkYTM4OTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3Jp
dGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSwxMiArMSwxMiBAQAogCi1GQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxl
KCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3Rv
cnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVu
Y2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdE
YXRhOiB0cnVlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRo
IHNvdXJjZSBjb250ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBj
cmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxl
IGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vyc29yIHBvc2l0
aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBpcyB1bmxvY2tlZCBhZnRlciBl
YWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB0cnVu
Y2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgZmFpbHMgd2hl
biBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB0cnVuY2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVk
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBF
eGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxp
emVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0
YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246
IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBjb21tYW5kcyBhcmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVy
YXRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L3drMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQyMWRlZDU0OTk2ZTdmMGFjYzg4MDZmYTdlN2U5
YTI3ZTdjZmNlNDYuLmQ4ZGNlYmU0ODcxMDIzMDkzNDUzYWZhZmI4ZjNkMjcyYmRmOTNmNjggMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCkBAIC04NjQsMyArODY0
LDUgQEAgZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1lbnRlci13aGlsZS1leGl0aW5nLmh0bWwgWyBQ
YXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgUGFz
cyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgUGFzcyBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBQYXNz
IF0KK3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy8gWyBQYXNzIF0KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmVlZjdiNmVjN2Nk
YjBhNmUxMzIxMzA5YmFmZjA1ZTk0OTQxMWJmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwyMCBAQAorVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9u
YWxpdGllcyBvZiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyByb290SGFuZGxlLm5hbWUgaXMgIiIKK1BBU1Mgcm9vdEhhbmRs
ZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGRpckhhbmRsZS5uYW1lIGlzICJkaXIiCitQQVNT
IGRpckhhbmRsZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGlzU2FtZUVudHJ5IGlzIGZhbHNl
CitQQVNTIGZpbGVIYW5kbGUubmFtZSBpcyAiZmlsZSIKK1BBU1MgZmlsZUhhbmRsZS5raW5kIGlz
ICJmaWxlIgorUEFTUyBoYW5kbGVOYW1lcy5sZW5ndGggaXMgMgorUEFTUyBoYW5kbGVOYW1lc1sw
XSBpcyAiZGlyIgorUEFTUyBoYW5kbGVOYW1lc1sxXSBpcyAiZmlsZSIKK1BBU1MgY3JlYXRlRXJy
b3IudG9TdHJpbmcoKSBpcyAiTm90Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZv
dW5kIGhlcmUuIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9k
aXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lz
dGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODM3M2Q4
NmUzN2VlZDg1MTRmNDM3NjM0ZWZkNGUzMGE4ZjgwZmRjNAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2lj
cy5odG1sCkBAIC0wLDAgKzEsMTAwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBjaGVja3MgYmFz
aWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS4iKTsKKwordmFy
IHJvb3RIYW5kbGUsIGRpckhhbmRsZSwgZmlsZUhhbmRsZSwgaXNTYW1lRW50cnksIGhhbmRsZU5h
bWVzLCBjcmVhdGVFcnJvcjsKKworZnVuY3Rpb24gZmluaXNoVGVzdChlcnJvcikKK3sKKyAgICBp
ZiAoZXJyb3IpIHsKKyAgICAgICAgdGVzdEZhaWxlZChlcnJvcik7CisgICAgfQorICAgIGZpbmlz
aEpTVGVzdCgpOworfQorCitmdW5jdGlvbiBnZXREaXJlY3RvcnkoKSB7CisgICAgbmF2aWdhdG9y
LnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIHJvb3RI
YW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicm9vdEhhbmRs
ZS5uYW1lIiwgIiIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUu
a2luZCIsICJkaXJlY3RvcnkiKTsKKyAgICAgICAgY3JlYXRlRGlyZWN0b3J5SGFuZGxlKHJvb3RI
YW5kbGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVy
cm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY3JlYXRlRGlyZWN0b3J5SGFuZGxlKGZyb21I
YW5kbGUpIHsKKyAgICBmcm9tSGFuZGxlLmdldERpcmVjdG9yeUhhbmRsZSgiZGlyIiwgeyAiY3Jl
YXRlIiA6IHRydWUgfSkudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGRpckhhbmRsZSA9IGhh
bmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUubmFtZSIsICJk
aXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUua2luZCIsICJk
aXJlY3RvcnkiKTsKKyAgICAgICAgY2hlY2tJZlNhbWVFbnRyeShyb290SGFuZGxlLCBkaXJIYW5k
bGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9y
KTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY2hlY2tJZlNhbWVFbnRyeShoYW5kbGUxLCBoYW5k
bGUyKQoreworICAgIGhhbmRsZTEuaXNTYW1lRW50cnkoaGFuZGxlMikudGhlbigocmVzdWx0KSA9
PiB7CisgICAgICAgIGlzU2FtZUVudHJ5ID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZUZhbHNl
KCJpc1NhbWVFbnRyeSIpOworICAgICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgdHJ1
ZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgIH0pOworfQorCitmdW5jdGlvbiBjcmVhdGVGaWxlSGFuZGxlKGZyb21IYW5kbGUsIGNy
ZWF0ZSkgeworICAgIGxldCBvcHRpb25zID0geyAiY3JlYXRlIiA6IGNyZWF0ZSB9OworICAgIGZy
b21IYW5kbGUuZ2V0RmlsZUhhbmRsZSgiZmlsZSIsIG9wdGlvbnMpLnRoZW4oKGhhbmRsZSkgPT4g
eworICAgICAgICBmaWxlSGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImZpbGVIYW5kbGUubmFtZSIsICJmaWxlIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygiZmlsZUhhbmRsZS5raW5kIiwgImZpbGUiKTsKKyAgICAgICAgcmVzb2x2ZVBhdGgo
KTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgaWYgKGNyZWF0ZSkgeworICAg
ICAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgY3JlYXRlRXJyb3IgPSBlcnJvcjsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJjcmVhdGVFcnJvci50b1N0cmluZygpIiwgIk5vdEZvdW5kRXJyb3I6IFRoZSBvYmpl
Y3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIpOworICAgICAgICBmaW5pc2hUZXN0KCk7CisgICAg
fSk7Cit9CisKK2Z1bmN0aW9uIHJlc29sdmVQYXRoKCkgeworICAgIHJvb3RIYW5kbGUucmVzb2x2
ZShmaWxlSGFuZGxlKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaGFuZGxlTmFtZXMgPSBy
ZXN1bHQ7CisgICAgICAgIHNob3VsZEJlKCJoYW5kbGVOYW1lcy5sZW5ndGgiLCAiMiIpOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVzWzBdIiwgImRpciIpOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVzWzFdIiwgImZpbGUiKTsKKyAg
ICAgICAgcmVtb3ZlRW50cnkoZGlySGFuZGxlLCAiZmlsZSIpOworICAgIH0pLmNhdGNoKChlcnJv
cikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rp
b24gcmVtb3ZlRW50cnkoZnJvbUhhbmRsZSwgbmFtZSkgeworICAgIGZyb21IYW5kbGUucmVtb3Zl
RW50cnkobmFtZSkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIC8vIE5vIGVycm9yIG1lYW5z
IGl0IGlzIHJlbW92ZWQuCisgICAgICAgIGNyZWF0ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCBmYWxz
ZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgIH0pOworfQorCitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICBqc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKKyAgICBnZXREaXJlY3RvcnkoKTsKK30gZWxzZSB7CisgICAgZmluaXNoVGVz
dCgid2luZG93LnRlc3RSdW5uZXIgaXMgbm90IGF2YWlsYWJsZSIpOworfQorPC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438870</attachid>
            <date>2021-09-21 15:34:58 -0700</date>
            <delta_ts>2021-09-21 19:04:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210921153456.patch</filename>
            <type>text/plain</type>
            <size>187692</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uZTI5M2M5ODQ3MTMwOWI5Y2Y0ZGRiOGNiOTBhZGE3
MjUyNWYzMmE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDIxLTA5LTIxICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOiBEZWxldGVkLgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpG
aWxlU3lzdGVtSGFuZGxlOjppbXBsIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAg
ICogTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9k
dWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2Vy
Ojpjb25uZWN0aW9uSW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0
b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAg
ICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
SlNOZXdseUNyZWF0ZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlw
dExvYWRlci5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6
CisKIDIwMjEtMDktMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0NvY29hXSBNYWtlIEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBl
cmltZW50YWwgRmVhdHVyZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNk
Nzc0MDcxZjU1NDdiLi5iYmQwOGUxOWM4OGQ5Mjc3MWY4MGEwYmExNzg3MTUyN2ZmMWVkZTE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwpAQCAtMSwzICsxLDg4IEBACisyMDIxLTA5LTIxICBTaWh1aSBMaXUgIDxzaWh1aV9s
aXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lz
dGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEludHJvZHVjZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUg
aGFuZGxlcy4gRWFjaCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAor
ICAgICAgICBGaWxlU3lzdGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UHJvY2Vzczo6cmVtb3ZlU3RvcmFnZU1hbmFnZXJGb3JTZXNzaW9uKToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaDogQWRkZWQuCisgICAg
ICAgIChXZWJLaXQ6OmNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmlzU2FtZUVu
dHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RD
cmVhdGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6cGF0aCBjb25zdCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaDogQWRkZWQuCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6dW5yZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZSk6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
Lmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAg
ICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9y
eSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xvc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZy
b21Db25uZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6cmVzb2x2ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6Y2xlYXJTdG9yYWdlRm9yVGVzdGluZyk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzZXNzaW9uSUQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6Y29u
bmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlQnVja2V0Ojp0eXBlU3RvcmFnZVBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25D
bG9zZWQpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1
Y2tldCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToK
KyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdl
TWFuYWdlci5oOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAg
ICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6CisgICAgICAgICogU291
cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkpOgorICAgICAgICAoV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0
RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpnZXRQZXJzaXN0ZWQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdCk6CisgICAgICAgIChXZWJLaXQ6
OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3RlZCk6IERlbGV0ZWQuCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oOgor
CiAyMDIxLTA5LTE5ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAg
ICAgICAgIFRlYWNoIGBXZWJLaXQ6OmNyZWF0ZVNoYXJlYWJsZUJpdG1hcGAgdG8gc25hcHNob3Qg
dmlkZW8gZWxlbWVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2Ug
Yi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGY0MTEzMzRkNmI3MTQ3MzcwNTcw
NmNlMDVmNGRjNjEwNDg3Y2E3N2UuLjU1YzUwMmQ1YjA5N2MzNDIyMjk1YThlMmZkN2Y1NjgzYjU3
ZWQwNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtNDAsNiArNDAsNyBAQCBzZXQoV2ViQ29yZV9Q
UklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtRmlsZUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuaAorICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL1N0b3JhZ2VNYW5hZ2VyRmls
ZVN5c3RlbUFjY2Vzcy5oCiAKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAppbmRleCBkOTVkNjkyNDNm
NTA0MDlkZTMyNmZhYTlhY2ZlMDBjYTFmNmRhMmUxLi5kYmIwOGFkNWM2Zjg5ZTZhNjEzY2VlZjUz
ZWM2Mjk5NmJhYTQwNGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwCkBAIC0yNiw0MSArMjYsNjQgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCisjaW5jbHVkZSAiSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZT4gRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVt
SGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShuYW1lKSkK
K0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCisgICAgOiBGaWxl
U3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlOjpnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0
aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+IG9wdGlvbnMs
IERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYm
IHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVk
RXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0Rmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZN
b3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQu
aGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0
LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5y
ZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9u
YWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYg
cHJvbWlzZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETElu
dGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVu
dGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9u
cy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdldERpcmVjdG9yeUhhbmRsZShXVEZNb3Zl
KG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShh
dXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRp
b24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFs
dWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVt
b3ZlRW50cnkoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlz
ZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoU3RyaW5nJiYg
bmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1vdmVPcHRp
b25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQogewotICAg
IHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxl
bWVudGVkIl9zIH0pOworICAgIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkgPSBvcHRpb25zID8gb3B0
aW9ucy0+cmVjdXJzaXZlIDogZmFsc2U7CisgICAgaW1wbCgpLnJlbW92ZUVudHJ5KFdURk1vdmUo
bmFtZSksIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1
dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1
bHQpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZXNv
bHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVk
PElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBpbXBsKCkucmVzb2x2ZShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUo
cHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVs
ZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVh
c2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKaW5kZXggNGFmMWQ5ZGI3MjQyODQ5
MjQ3NDI5MWFkZWQ0OGM5NDdmNDM0NTAyYi4uN2M0N2U3NTVlYzBhOTZkMGJmMjU5ZWU1NDNjMjVl
NDZmYWYxMDQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCkBAIC0z
MSw3ICszMSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRmlsZVN5c3RlbUZpbGVI
YW5kbGU7CiAKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIGZpbmFsIDogcHVi
bGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZSk7CiBwdWJsaWM6CiAgICAgc3RydWN0IEdldEZpbGVPcHRpb25z
IHsKQEAgLTQ2LDE0ICs0NiwxOCBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgcmVjdXJzaXZlIHsg
ZmFsc2UgfTsKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPiBjcmVhdGUoU3RyaW5nJiYpOwotICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShjb25zdCBTdHJp
bmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJy
ZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik7Ci0gICAgdm9pZCBnZXRE
aXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldERpcmVj
dG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU+PiYmKTsKLSAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYg
bmFtZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZv
aWQ+JiYpOwotICAgIHZvaWQgcmVzb2x2ZShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJv
bWlzZURlZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOworICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0cmlu
ZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRs
ZShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldEZpbGVPcHRpb25zPiwgRE9NUHJvbWlz
ZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpOworICAgIHZv
aWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGly
ZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4+JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFt
ZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+
JiYpOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOwogCiBwcml2YXRlOgotICAgIGV4cGxp
Y2l0IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVH
SU4oV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSkKKyAgICBzdGF0aWMgYm9vbCBp
c1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKSB7IHJldHVybiBo
YW5kbGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9y
eTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKaW5kZXggOWVkYzIwNGUxN2VlMTMzNGYzMDc3MGUyYmE3NDUwNTlkYTU4NzBhMi4u
ZjE1ZTAxMWQ2ZjYzZTU3MDM5YzZlOTQ2MjdlYTI1YWQwOWYwZTEyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKICNpbmNs
dWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgogCkBAIC0zMywxMyArMzQsMTMgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbUZp
bGVIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFu
ZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmls
ZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVt
RmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1G
aWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSkK
LSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RG
TW92ZShuYW1lKSkKK0ZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShT
dHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZp
bGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RGTW92ZShuYW1l
KSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAppbmRl
eCAwYTdmYTRlMzhiOGE1MDQ4MGYzZTMyMjc5ZGMzOTkxYzA0ZTNjYjkxLi40ODI5YmIyNDE3Nzlj
NzU0ZWE3YTU4N2FlNmQxYTFlOTI3MmRkMzEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aApAQCAtMzQsMTEgKzM0LDE1IEBAIGNsYXNzIEZpbGU7CiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhh
bmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVm
PEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYpOworICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKICAgICB2b2lkIGdldEZpbGUoRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQg
RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2Vi
Q29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZTsgfQorU1BFQ0lBTElaRV9UWVBFX1RS
QUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCmluZGV4IDIxMjFiMWNjMjUxNTE4YmI5
NWRmMDY5NDExYzIxMTJiNjA4NTBmYmYuLjRhZjYxMTA4YjE3MWYyNjdhNDkyZmI2ZTU1MDIwNDZh
NjJjZDE0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKQEAgLTMzLDE1ICszMywyMyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lz
dGVtSGFuZGxlKTsKIAotRmlsZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lz
dGVtSGFuZGxlOjpLaW5kIGtpbmQsIFN0cmluZyYmIG5hbWUpCitGaWxlU3lzdGVtSGFuZGxlOjpG
aWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiAgICAgOiBtX2tpbmQoa2luZCkK
ICAgICAsIG1fbmFtZShXVEZNb3ZlKG5hbWUpKQorICAgICwgbV9pbXBsKFdURk1vdmUoaW1wbCkp
CiB7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCitG
aWxlU3lzdGVtSGFuZGxlOjp+RmlsZVN5c3RlbUhhbmRsZSgpID0gZGVmYXVsdDsKKwordm9pZCBG
aWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUsIERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpIGNvbnN0CiB7Ci0gICAgcHJv
bWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50
ZWQiX3MgfSk7CisgICAgaWYgKG1fa2luZCAhPSBoYW5kbGUua2luZCgpIHx8IG1fbmFtZSAhPSBo
YW5kbGUubmFtZSgpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZXNvbHZlKGZhbHNlKTsKKwor
ICAgIG1faW1wbC0+aXNTYW1lRW50cnkoaGFuZGxlLmltcGwoKSwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2Uuc2V0dGxl
KFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZS5oCmluZGV4IDc1NGU0OTQxOWJiNjM3ZjE3ZjA3ZmQ4MDMxOTlmMjIx
ODI3Njk5N2EuLmU1Y2Y3MDIzYTY5NTlkNjhkMzk1NDFmMDY3MDc2ZWQ3M2JmNmZlYTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1IYW5kbGUuaApAQCAtMzEsMjkgKzMxLDMyIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBET01Qcm9taXNlRGVmZXJyZWQ7CisKK2NsYXNz
IEZpbGVTeXN0ZW1IYW5kbGVJbXBsOwogZW51bSBjbGFzcyBQZXJtaXNzaW9uU3RhdGUgOiB1aW50
OF90OwogCiBjbGFzcyBGaWxlU3lzdGVtSGFuZGxlIDogcHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5
c3RlbUhhbmRsZT4gewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUhhbmRs
ZSk7CiBwdWJsaWM6CisgICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZSgpOworCiAgICAgZW51
bSBjbGFzcyBLaW5kIDogdWludDhfdCB7CiAgICAgICAgIEZpbGUsCiAgICAgICAgIERpcmVjdG9y
eQogICAgIH07Ci0KLSAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0Owot
CiAgICAgS2luZCBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9CiAgICAgY29uc3QgU3Ry
aW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9CisgICAgRmlsZVN5c3RlbUhhbmRs
ZUltcGwmIGltcGwoKSBjb25zdCB7IHJldHVybiBtX2ltcGwuZ2V0KCk7IH0KIAotICAgIHZvaWQg
aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExCb29sZWFuPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmLCBE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJikgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAg
ICBGaWxlU3lzdGVtSGFuZGxlKEtpbmQsIFN0cmluZyYmIG5hbWUpOworICAgIEZpbGVTeXN0ZW1I
YW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsK
IAogcHJpdmF0ZToKICAgICBLaW5kIG1fa2luZCB7IEtpbmQ6OkZpbGUgfTsKICAgICBTdHJpbmcg
bV9uYW1lOworICAgIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4gbV9pbXBsOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCmluZGV4IDIwOGU3NDVj
YzNiZmM0Yzc5NzZlYzAyOGUxYjRkZDYyYWFmZDAzMDguLjliZDAxMDAxMWJmM2M1Yzg3N2RlNjgz
ZDZhYTgxNmRiZWFhMTBmYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKQEAgLTI5LDYgKzI5
LDcgQEAgZW51bSBGaWxlU3lzdGVtSGFuZGxlS2luZCB7CiB9OwogCiBbCisgICAgQ3VzdG9tVG9K
U09iamVjdCwKICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKSwKICAgICBFbmFibGVkQnlTZXR0
aW5nPUZpbGVTeXN0ZW1BY2Nlc3MsCiAgICAgU2VjdXJlQ29udGV4dApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZUltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNmFiNmU1YzYwZGZkZWFiMTQxYTQyNDFjMGE1N2FmYjky
ZmZmNjg3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNz
IEV4Y2VwdGlvbk9yOworCitjbGFzcyBGaWxlU3lzdGVtSGFuZGxlSW1wbCA6IHB1YmxpYyBSZWZD
b3VudGVkPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+Rmls
ZVN5c3RlbUhhbmRsZUltcGwoKSB7IH0KKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IHN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpc1Nh
bWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8Ym9vbD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RmlsZUhhbmRs
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNl
cHRpb25PcjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSA9IDA7CisgICAg
dmlydHVhbCB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNp
dmUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEw
YzhiMzFmOTRiNjZhZjA4Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3
MzY3MDRjYjIyNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7
CiAgICAgICAgIH0KIAotICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAg
dm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAg
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJz
aXN0KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQorICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAg
ICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisK
KyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7Cisg
ICAgICAgIH0KICAgICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0
aW9uKCkgZmluYWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3Jh
Z2VDb25uZWN0aW9uLmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3
NTUzMy4uMGE0MDA3M2I0ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAg
LTI1LDE4ICsyNSwyMiBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBs
YXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsK
IAogY2xhc3MgU3RvcmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29u
bmVjdGlvbj4gewogcHVibGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBk
ZWZhdWx0OwotICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lz
dChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0
KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRP
cmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
Y3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLjZkM2I0
MGUwMGZhMmQxZDdlNGZiMGE5NzNmYzE1MTU0YTU1YmZhNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAg
QEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2lu
LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNl
LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFu
YWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQor
c3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2Vw
dGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4g
cHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3Ig
ZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBj
b250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAo
IWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJf
cyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAg
ICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAK
LSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICgh
b3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVj
dGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9y
aWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4o
KS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBj
b25uZWN0aW9uSW5mby5jb25uZWN0aW9uLmdldFBlcnNpc3RlZChjb25uZWN0aW9uSW5mby5vcmln
aW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
ewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAgICB9KTsKIH0KIAogdm9p
ZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4m
JiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVybiBwcm9t
aXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2Vz
IG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBj
b25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9P
ckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0byBjb250ZXh0ID0gbV9u
YXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBpZiAoIWNvbnRleHQpCi0g
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJv
ciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8qIG9yaWdpbiA9
IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmlnaW4pCi0gICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk9yaWdp
biBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNpc3QoeyBj
b250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0g
V1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29u
bmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1
ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3QoY29ubmVj
dGlvbkluZm8ub3JpZ2luLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGJvb2wgcGVyc2lz
dGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAg
fSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24g
eyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBhdXRvIGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJv
bWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkp
OworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24u
cmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9uSW5mby5vcmlnaW4sIFtwcm9taXNl
ID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAo
cmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0
KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShy
ZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3Rv
cmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3
MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0
ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDog
cHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2
YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAg
IHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4g
Y29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9y
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUy
NTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNw
cAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50
cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBi
aW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNI
VE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25D
dXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4u
NjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsy
ODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4
MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlG
IC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9u
UnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGlu
Z1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5
MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBt
aXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBu
ZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29y
bmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsg
fTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVB
NTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkg
QEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEw
MDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMz
OEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxU
YWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAv
KiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9y
YWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAw
NTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxl
U3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9
OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlC
RDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5
NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFu
ZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJD
OUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdG
MjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29u
dGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4
MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2
NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3
MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsx
MTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFu
Z2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQw
QUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBC
b3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZG
MUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFu
ZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1
RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJ
bldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAx
MTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0
YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxp
bmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiAr
MjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0
Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5
c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyog
SlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBB
QThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMy
NEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJ
CUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAq
LywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RC
IC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1
MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQz
RTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAq
LywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAw
OTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQz
RTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVt
SGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1
IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAz
MUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBB
ODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNs
dWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNh
bEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3Rl
bUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3Qs
IGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0
ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdy
YXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhh
bmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4
IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJj
YjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5o
IgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRl
YWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApA
QCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25z
ZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2
aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjViMWIzZTc0NmM5NjkyOTI2NGJhZmRm
OGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1ZDVjMjE2MGQ3NmE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtNDYx
LDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFkZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vz
c2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0CiAKIHZvaWQgTmV0d29ya1Byb2Nl
c3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3ZlKHNlc3Npb25JRCk7CisgICAgaWYg
KGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRha2Uoc2Vzc2lvbklEKSkKKyAgICAg
ICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6Zm9yRWFjaE5l
dHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0d29ya1Nlc3Npb24mKT4mIGZ1bmN0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZGZmZTIyYTllOGRjYzVi
ODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApAQCAtMCww
ICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxXZWJDb3Jl
L0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCituYW1lc3Bh
Y2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhf
dCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1lLAorICAgIEludmFsaWRNb2Rp
ZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25vd24KK307CisKK2lubGluZSBX
ZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9yKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAgIH0KK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVt
VHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4geworICAgIHVzaW5nIHZhbHVl
cyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUsCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbiwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgorICAgID47Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmVjZmI1Y2UyN2FiN2M1MzNhZmEyZDFiZTllZWY2NDE2YjgwOGY1YjIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgT1MoV0lORE9X
UykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UKK2NvbnN0ZXhw
ciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYg
bWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKQorICAgIDog
bV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcjo6Z2VuZXJhdGVU
aHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAg
LCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9uYW1l
KFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3BhdGguaXNFbXB0eSgpKTsKKworICAg
IHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjptYWtlQWxsRGlyZWN0b3JpZXMobV9w
YXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKG1fcGF0aCkp
CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbTo6
b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Blbk1vZGU6OldyaXRlKTsKKyAgICAg
ICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7CisgICAgfQorfQorCit2b2lkIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRl
bnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIobV9wYXRoID09IHBh
dGgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFu
ZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgVHlwZSB0eXBlLCBTdHJpbmcmJiBuYW1l
LCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVk
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChtX3R5cGUgIT0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaCkpOworCisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7
CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFs
aWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUgPT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1l
LmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpKTsK
KworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudCht
X3BhdGgsIG5hbWUpOworICAgIG1fbWFuYWdlci0+Y3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIHR5
cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGU6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUo
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUsIFdURk1vdmUo
bmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVs
ZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1f
dHlwZSAhPSBUeXBlOjpEaXJlY3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRo
ID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7Cisg
ICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpkZWxl
dGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAgICAg
ICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAgICAg
ICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247CisgICAg
ICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBhdGgp
KQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bjsK
KyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7Cisg
ICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
bWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAg
aWYgKCFwYXRoLnN0YXJ0c1dpdGgobV9wYXRoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5z
dWJzdHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN0UGF0
aC5zcGxpdChwYXRoU2VwYXJhdG9yKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZTQyYzFlMGE1YTJhNmZiM2E3YjE3
NGM1ZmQxZDNmYmE5ZGVmM2E3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2
MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5o
IgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5j
bHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6
IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1h
a2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxp
emF0aW9uOjpFYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgor
ICAgIGVudW0gY2xhc3MgVHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJp
bmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9Cisg
ICAgY29uc3QgU3RyaW5nJiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICB2
b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6
Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5
SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQg
cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworCitwcml2YXRlOgorICAgIHZvaWQgcmVxdWVzdENy
ZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBTdHJpbmcmJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsK
KworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7Cisg
ICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBl
IG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVk
ZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVu
dGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBh
N2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNw
cApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7Cisg
ICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5k
bGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRs
ZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlm
aWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50
aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxw
dHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2Nj
N2YwZjI4ODAyMzI1MDdiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCww
ICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0
aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
Jik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmIyMDhhNDI0ZjVmZGYwMmQ2
Y2E4OTc5ZDIxMjE0OGI2Nzc5OTUxOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0w
LDAgKzEsMTA3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRo
KSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBm
b3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0
cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhw
ZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtu
b3duKSk7CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBh
dGgpOworICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpGaWxlTm90Rm91bmQpKTsKKworICAgIGlmIChmaWxlRXhpc3RzKSB7CisgICAgICAg
IGF1dG8gZXhpc3RpbmdGaWxlVHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAg
ICAgICBpZiAoIWV4aXN0aW5nRmlsZVR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikp
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVt
U3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRs
ZSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBXVEZN
b3ZlKHBhdGgpLCBXVEZNb3ZlKG5hbWUpKTsKKyAgICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIg
PSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5z
dXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZdIHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3It
PnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVy
SGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5h
ZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyKTsKK30KKworY29uc3QgU3RyaW5nJiBGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZmluZChp
ZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxlcy5lbmQoKSA/IGVtcHR5
U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
bikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxl
cyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQoKSk7Cisg
ICAgaWYgKGhhbmRsZXMgPT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVl
KSB7CisgICAgICAgIGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLnRha2UoaGFuZGxlSWRlbnRpZmll
cik7CisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVy
KTsKKyAgICB9CisgICAgbV9oYW5kbGVzQnlDb25uZWN0aW9uLnJlbW92ZShoYW5kbGVzKTsKK30K
Kwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisK
KyAgICBjcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5
cGU6OkRpcmVjdG9yeSwgU3RyaW5nIHsgbV9wYXRoIH0sIHsgfSwgdHJ1ZSwgV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTlkNjYwMTFmMzUwNzk5YjIzMWI1ZjViYTY3
YTc4YWUzMWYzMzA5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBAIC0wLDAgKzEsNTQgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgi
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoKTsKKworICAg
IHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICBjb25z
dCBTdHJpbmcmIGdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3Rl
ZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I+KT4mJik7CisKK3ByaXZhdGU6CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiBtX3JlZ2lzdHJ5OworICAgIEhhc2hNYXA8SVBDOjpDb25u
ZWN0aW9uOjpVbmlxdWVJRCwgSGFzaFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXI+PiBtX2hhbmRsZXNCeUNvbm5lY3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZT4+IG1faGFuZGxlczsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmNwcAppbmRleCAzNjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMz
M2M3Li5hMWEzMjY4NDRhOGI2YTdhODA5M2FkZWQwZTc4NzI4OTI2OGU3ZmIwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0Ny
eXB0b0RpZ2VzdC5oPgpAQCAtNDUsNiArNDcsNyBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgog
ICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwYXRoID0gcGF0aC5pc29sYXRl
ZENvcHkoKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5ID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PigpOwog
ICAgICAgICBtX3BhdGggPSBwYXRoOwogICAgICAgICBpZiAoIW1fcGF0aC5pc0VtcHR5KCkpIHsK
ICAgICAgICAgICAgIGF1dG8gc2FsdFBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdD
b21wb25lbnQobV9wYXRoLCAic2FsdCIpOwpAQCAtNTMsMTggKzU2LDUwIEBAIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25J
RCwgY29uc3QgU3RyCiAgICAgfSk7CiB9CiAKK05ldHdvcmtTdG9yYWdlTWFuYWdlcjo6fk5ldHdv
cmtTdG9yYWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICBBU1NFUlQobV9jbG9zZWQpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xv
c2UoKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBpZiAobV9jbG9z
ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byYgY29ubmVjdGlvbiA6IG1fY29u
bmVjdGlvbnMpCisgICAgICAgIGNvbm5lY3Rpb24ucmVtb3ZlV29ya1F1ZXVlTWVzc2FnZVJlY2Vp
dmVyKE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSk7CisKKyAgICBtX2Nsb3NlZCA9IHRydWU7CisgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9XSgpIG11dGFibGUgeworICAgICAgICBtX2Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkgPSBudWxscHRyOworICAgICAgICBtX2xvY2Fs
T3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CisgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0
b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOworICAgIH0pOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0
aW9uJiBjb25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAg
ICBjb25uZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUuZ2V0KCksIHRo
aXMpOworICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2b2lkIE5ldHdv
cmtTdG9yYWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlvbihJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pKQorICAg
ICAgICByZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1l
KCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsg
KnRoaXMgfSwgcHJvdGVjdGVkQ29ubmVjdGlvbiA9IFJlZiB7IGNvbm5lY3Rpb24gfV0oKSB7Cisg
ICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3Rv
cmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXIt
PmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVkQ29ubmVjdGlvbi5nZXQoKSk7CisgICAgfSk7CiB9
CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBGaWxlU3lzdGVt
OjpTYWx0IHNhbHQpCkBAIC0xMTEsOSArMTQ2LDcyIEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0
CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiB9CiAKK3ZvaWQgTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
biwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKG9yaWdp
bikuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCptX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkpLmdldERpcmVjdG9yeShjb25uZWN0aW9uLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjppc1NhbWVFbnRyeShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01h
aW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgaGFuZGxlLT5pc1NhbWVFbnRy
eSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3Zv
aWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgaGFuZGxlLT5nZXRGaWxlSGFuZGxl
KGNvbm5lY3Rpb24sIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRE
aXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAg
IGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5k
bGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBXVEZNb3Zl
KG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwor
fQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFs
PEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBB
U1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYg
KCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+cmVtb3ZlRW50cnkobmFtZSwgZGVs
ZXRlUmVjdXJzaXZlbHksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJn
ZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJp
bmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAg
IGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhw
ZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgaGFuZGxlLT5y
ZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpXSgpIG11dGFibGUgewogICAgICAgICBtX2xvY2FsT3JpZ2luU3Rv
cmFnZU1hbmFnZXJzLmNsZWFyKCk7CiAgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5h
Z2Vycy5jbGVhcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCmluZGV4IGY2ZGFlZDEzZjI2NzUz
NzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLmZhMGEwZWFlNzcyNTIwNTRiNjc1N2Y1ODk4NDVj
OGJlMGZjNDQ2NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI2LDYgKzI2LDggQEAK
ICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgpAQCAt
MzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2luOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6
V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdlTWFuYWdlciBmaW5hbCA6IHB1YmxpYyBJ
UEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6CiAgICAg
c3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IGNyZWF0ZShQQUw6OlNlc3Npb25JRCwg
Y29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDQsMjUgKzQ4LDM2IEBAIHB1YmxpYzoKICAgICB2
b2lkIHN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJik7
CiAKICAgICBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Np
b25JRDsgfQorICAgIHZvaWQgY2xvc2UoKTsKICAgICB2b2lkIGNsZWFyU3RvcmFnZUZvclRlc3Rp
bmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKICAgICBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgcGF0aCk7CisgICAg
fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwogICAgIE9yaWdpblN0b3JhZ2VNYW5hZ2VyJiBsb2Nh
bE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYpOwogCiAg
ICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgKGltcGxlbWVudGVkIGJ5IGdlbmVyYXRlZCBjb2Rl
KQogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNv
ZGVyJik7CiAKLSAgICAvLyBNZXNzYWdlIEhhbmRsZXJzCisgICAgLy8gTWVzc2FnZSBoYW5kbGVy
cwogICAgIHZvaWQgcGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogICAgIHZvaWQgcGVyc2lzdChjb25zdCBXZWJD
b3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAg
ICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4m
Jik7CisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYs
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBj
cmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7
CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lk
IHJlbW92ZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIHJl
c29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8VmVjdG9y
PFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CiAKICAgICBQQUw6OlNlc3Np
b25JRCBtX3Nlc3Npb25JRDsKICAgICBSZWY8V29ya1F1ZXVlPiBtX3F1ZXVlOwogICAgIFN0cmlu
ZyBtX3BhdGg7CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CisgICAgYm9vbCBtX2Nsb3Nl
ZCB7IGZhbHNlIH07CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5p
cXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdl
cnM7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxP
cmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKyAg
ICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7IC8vIE1haW4gdGhy
ZWFkIG9ubHkuCisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnk+IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
aW5kZXggZmVjMjcxZTBlOGRlODk4ZmYzOTkyNmNiODY0MGVhMTBmMTc5OTU1MC4uYzZiNjk3OTU4
OTczZjZhMGM4ZWFkNmVmM2Y5OTRhMTQxZTNiZmJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5p
bgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0yNiw0ICsyNiwxMCBAQAogIG1lc3NhZ2VzIC0+IE5l
dHdvcmtTdG9yYWdlTWFuYWdlciB7CiAgICAgUGVyc2lzdGVkKHN0cnVjdCBXZWJDb3JlOjpDbGll
bnRPcmlnaW4gb3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCiAgICAgUGVyc2lzdChz
dHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBB
c3luYworICAgIEZpbGVTeXN0ZW1HZXREaXJlY3Rvcnkoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9y
aWdpbiBvcmlnaW4pIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5j
IFdhbnRzQ29ubmVjdGlvbgorICAgIElzU2FtZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChib29sIHJlc3VsdCkgQXN5bmMK
KyAgICBHZXRGaWxlSGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAo
RXhwZWN0ZWQ8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24K
KyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nhcnkp
IC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jIFdhbnRzQ29ubmVj
dGlvbgorICAgIFJlbW92ZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5KSAt
PiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHJlc3VsdCkg
QXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IHRhcmdldElkZW50aWZpZXIpIC0+IChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jCiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5h
Z2VyLmNwcAppbmRleCA3NWExYWVkMjQ5ZjkyODU5OTBmNjZjYTk2ODE3Mzc4OGVmNDdkMDU0Li5l
M2M3ZTY1MTgzOGEzMTM4YzkzYmY2OWJiZTU1NmFjZDRmZWVjZTA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdl
TWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2LDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5o
IgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogZW51bSBjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdl
cjo6U3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sIHsgQmVzdEVmZm9ydCwgUGVyc2lzdGVudCB9OwpA
QCAtMzgsMTIgKzQxLDM0IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRp
ZmllcikKICAgICB7CiAgICAgfQorCiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSgpIGNvbnN0
IHsgcmV0dXJuIG1fbW9kZTsgfQogICAgIHZvaWQgc2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZSBt
b2RlKSB7IG1fbW9kZSA9IG1vZGU7IH0KKworICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisgICAgeworICAgICAgICBpZiAobV9maWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpCisgICAgICAgICAgICBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci0+
Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKKyAgICB9CisKKyAgICBTdHJpbmcgdHlwZVN0
b3JhZ2VQYXRoKGNvbnN0IFN0cmluZyYgc3RvcmFnZUlkZW50aWZpZXIpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9yb290UGF0aC5pc0VtcHR5KCkgPyBlbXB0eVN0cmluZygpIDogRmls
ZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcm9vdFBhdGgsIHN0b3JhZ2VJZGVu
dGlmaWVyKTsKKyAgICB9CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIGZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3Ry
eSkKKyAgICB7CisgICAgICAgIGlmICghbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpCisgICAg
ICAgICAgICBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA9IG1ha2VVbmlxdWU8RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyPih0eXBlU3RvcmFnZVBhdGgoIkZpbGVTeXN0ZW0iKSwgcmVnaXN0cnkp
OworCisgICAgICAgIHJldHVybiAqbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisgICAgfQor
CiBwcml2YXRlOgogICAgIFN0cmluZyBtX3Jvb3RQYXRoOwogICAgIFN0cmluZyBtX2lkZW50aWZp
ZXI7CiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbV9tb2RlIHsgU3RvcmFnZUJ1Y2tldE1vZGU6OkJl
c3RFZmZvcnQgfTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
PiBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKIH07CiAKIE9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKQpAQCAtNTMsMTQgKzc4LDI5IEBA
IE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
KQogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6fk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCkgPSBkZWZh
dWx0OwogCi12b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KCkKK3ZvaWQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0
aW9uKQoreworICAgIGlmIChtX2RlZmF1bHRCdWNrZXQpCisgICAgICAgIG1fZGVmYXVsdEJ1Y2tl
dC0+Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKK30KKworT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6OlN0b3JhZ2VCdWNrZXQmIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVja2V0KCkK
IHsKLSAgICBtX3BlcnNpc3RlZCA9IHRydWU7Ci0gICAgCiAgICAgaWYgKCFtX2RlZmF1bHRCdWNr
ZXQpCiAgICAgICAgIG1fZGVmYXVsdEJ1Y2tldCA9IG1ha2VVbmlxdWU8U3RvcmFnZUJ1Y2tldD4o
bV9wYXRoLCAiZGVmYXVsdCJfcyk7CiAKLSAgICBtX2RlZmF1bHRCdWNrZXQtPnNldE1vZGUoU3Rv
cmFnZUJ1Y2tldE1vZGU6OlBlcnNpc3RlbnQpOworICAgIHJldHVybiAqbV9kZWZhdWx0QnVja2V0
OworfQorCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KCkKK3sKKyAgICBtX3Bl
cnNpc3RlZCA9IHRydWU7CisgICAgZGVmYXVsdEJ1Y2tldCgpLnNldE1vZGUoU3RvcmFnZUJ1Y2tl
dE1vZGU6OlBlcnNpc3RlbnQpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIE9yaWdp
blN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCit7CisgICAgcmV0dXJuIGRlZmF1bHRCdWNrZXQo
KS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIocmVnaXN0cnkpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggOWU0MjE1YjNjNzAwYmQ0OTlkMDZl
M2I5MDRjMTRlZmQ2NTI4OWYzMC4uYmM2MmNmNDIyZjVhMzVkZDJlYzRiYmE2ODU2MWY3MWUxMGI2
ODk1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI1LDIyICsyNSwyOSBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAorY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjsKKwogY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXIgewogICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIGV4cGxpY2l0IE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpOwogICAgIH5PcmlnaW5TdG9yYWdlTWFuYWdlcigpOwog
CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYpOwogICAgIGJvb2wg
cGVyc2lzdGVkKCkgY29uc3QgeyByZXR1cm4gbV9wZXJzaXN0ZWQ7IH0KICAgICB2b2lkIHBlcnNp
c3QoKTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIGZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CiAKIHByaXZhdGU6CiAgICAg
ZW51bSBjbGFzcyBTdG9yYWdlQnVja2V0TW9kZSA6IGJvb2w7CiAgICAgY2xhc3MgU3RvcmFnZUJ1
Y2tldDsKKyAgICBTdG9yYWdlQnVja2V0JiBkZWZhdWx0QnVja2V0KCk7CiAKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8U3RvcmFnZUJ1Y2tldD4gbV9kZWZhdWx0QnVja2V0OwogICAgIFN0cmluZyBtX3Bh
dGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5
IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCBlNWNmZTBk
YTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJiMTViLi4zZjkzNmQyNTI5MDJlNTI0NzhlYjgx
MTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2Fy
ZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywK
ICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtPYnNlcnZlcklEJywKICAgICAgICAgJ1dlYktp
dDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3In
LAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXInLAog
ICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlzdGVuZXJJZGVudGlmaWVyJywKICAgICAgICAg
J1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R3JhcGhp
Y3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNl
cy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IDkzZGJhNmNkOTYwYjA4OTFi
MmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJlOGZmZWVjNmM4Yjk1Y2ZkMTM5YTBmMGZhZjBj
OTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291
cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1LDYgKzExNSw5IEBAIE5ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9yZS5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJv
Y2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlv
bi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKIApA
QCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3MvVXNlckNvbnRlbnQvV2ViVXNlckNvbnRlbnRD
b250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9XZWJBdXRoZW50aWNh
dG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhu
UHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vz
c2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2hhcmVh
YmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCcm9h
ZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFmNzZiMzg5NGU5MTdjNTI3YzRmOTM4ZmVlZDg2
M2M3NzAxYzY5Li40MmJlY2E5ZDhmNGYwNzY2ZmVkYmIyOTEzMjcxMTRmNmJlNmE0MGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE0
NjksNiArMTQ2OSw5IEBACiAJCTkzMDg1RERGMjZFNUJDRjEwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCAqLzsgfTsKIAkJOTMwODVERTAyNkU1QkNGRDAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlci5oICovOyB9OwogCQk5MzA4NURFMTI2RTVCRDEzMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oICovOyB9OworCQk5MzEyQkFENTI2RjMzQzI2MDBGRERG
NUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi87IH07CisJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1RiAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmggKi87IH07CisJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvci5oICovOyB9OwogCQk5MzIxRDU4NjFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVB
Y3Rpb25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzIxRDU4NTFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250
cm9sbGVyLmggKi87IH07CiAJCTkzMjFENThBMUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0
ZUFjdGlvblR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzIxRDU4OTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMjM2
MTFFMUIwMTVEQTgwMEZBOTIzMiAvKiBfV0tPdmVybGF5U2Nyb2xsYmFyU3R5bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjM2MTFEMUIwMTVEQTgw
MEZBOTIzMiAvKiBfV0tPdmVybGF5U2Nyb2xsYmFyU3R5bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQ4NSw2ICsxNDg4LDcgQEAKIAkJOTM1
NkYyREYyMTUyQjcyMzAwRTZENURGIC8qIFdlYlNXT3JpZ2luU3RvcmUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REYyMTUxQURGNDAwN0Y0
NTVGIC8qIFdlYlNXT3JpZ2luU3RvcmUuY3BwICovOyB9OwogCQk5MzU2RjJFMDIxNTJCNzUyMDBF
NkQ1REYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNEREMjE1MUFERjMwMDdGNDU1
RiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwICovOyB9OwogCQk5MzU2RjJF
MTIxNTJCNzY2MDBFNkQ1REYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNEUxMjE1MUFERjQwMDdG
NDU1RiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwICovOyB9OworCQk5MzVCNTc5QTI2RjUx
OTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1QjU3OTgyNkY1MTI3MDAw
OEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLzsgfTsKIAkJOTM1
RUVCOUIxMjc3NjE3QzAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTgxMjc3
NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNUVFQjlGMTI3NzYxQUMw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdL
QnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJOTM2OEVFREUyMzAzQTkwMjAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5h
Z2VyU2V0TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNjhFRURDMjMwM0E4RDgwMEJEQjExQSAvKiBTdG9yYWdlTWFuYWdl
clNldE1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC00OTA0LDYgKzQ5MDgsMTQgQEAKIAkJ
OTMwODVEQ0MyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VS
ZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5MzA4NURDRDI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
TWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVE
Q0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGll
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXJNZXNzYWdlc1JlcGxpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3
NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1
MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzVBMjZGMUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTFC
RTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIxRDU4NTFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1l
ZGlhdGVBY3Rpb25Db250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzIxRDU4NzFBMzhFRTc0MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9s
bGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0tJbW1lZGlh
dGVBY3Rpb25Db250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIx
RDU4OTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00OTE4LDYgKzQ5MzAsOCBAQAogCQk5MzQyNTg4RjI1
NTVEQ0E1MDA1OUVFREQgLyogTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk5MzQyNTg5ODI1NUI1MzRCMDA1OUVFREQgLyogTWVkaWFQZXJtaXNzaW9u
VXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGVybWlz
c2lvblV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzRCNzI0MzE5
RjVCOUJFMDBBRTk2RDYgLyogV0tBY3Rpb25NZW51SXRlbVR5cGVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzVCNTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzNUI1Nzk5MjZGNTE5MkYwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzVFRUI5NTEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9y
d2FyZExpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NjEyNzc2
MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTcxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0SXRlbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtOTY5MSw2ICs5NzA1LDE0IEBACiAJCTkzMDg1REMyMjZFMUJCNjUwMDBFQzZBNyAv
KiBzdG9yYWdlICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJ
CQk5MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICov
LAorCQkJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZS5jcHAgKi8sCisJCQkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmggKi8sCisJCQkJOTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oICovLAorCQkJCTkzNUI1Nzk5MjZGNTE5MkYwMDhC
NDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCAqLywKKwkJCQk5MzVC
NTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5o
ICovLAorCQkJCTkzMUEwNzUxMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuY3BwICovLAorCQkJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDMzI2RTFCQkJEMDAwRUM2QTcgLyogTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKIAkJCQk5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzcyNkUxQzZFRTAwMEVD
NkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbiAqLywKQEAgLTEwMDA2LDYg
KzEwMDI4LDggQEAKIAkJCQlDRDYxNzgxMTFFNkRFOTgwMDBGREE1N0QgLyogY29jb2EgKi8sCiAJ
CQkJMkQyOEYzREYxODg1Q0NCNDAwNEI5RUFFIC8qIGlvcyAqLywKIAkJCQlCQzExMUFERTExMkY1
QjlBMDAzMzdCQUIgLyogbWFjICovLAorCQkJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLywKKwkJCQk5MzFBMDc1QTI2RjFCOTY4
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovLAogCQkJCTFBNzI4
NDQ0MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcCAqLywKIAkJ
CQkxQTcyODQ0NTE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5oICov
LAogCQkJCUY0M0E5Q0RFMjVENzJFMkQwMDk5MEUyNiAvKiBTaGFyZWFibGVCaXRtYXBVdGlsaXRp
ZXMuY3BwICovLApAQCAtMTIxNzgsNiArMTIyMDIsMTAgQEAKIAkJCQkxQUE1NzVGQjE0OTZCNTI2
MDBBNEVFMDYgLyogRXZlbnREaXNwYXRjaGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzJFQkJE
NzI1MzdFQkFFMDAwNTUyQjMgLyogRXh0cmFQcml2YXRlU3ltYm9sc0ZvclRBUEkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTU3QjgyNjQ4MjMwNTBDNTEwMEI3MkVCMCAvKiBGaWRvU2VydmljZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1
RiAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1QjU3
OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ1MjZGMzNDMjYwMEZEREY1RiAvKiBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTAwQjk2NjFBMThFMjVBRTEwMENF
MUY4OCAvKiBGaW5kQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTkwQzFGNDEyNjRGRDcx
MDAzRTQ0RDQgLyogRmluZENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1OUM0QTU5
MThCODExNzQwMDdCRENCNiAvKiBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40MTdmZTMxMDEwZTcxNGQwN2JlYjgyMTU0NmJmYzZkZTlhMTZlYmQxCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuaCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRl
ICJOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRXhj
ZXB0aW9uT3IuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg+CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eT4gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllciBpZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShpZGVudGlmaWVy
LCBjb25uZWN0aW9uKSk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICA6IG1faWRlbnRp
ZmllcihpZGVudGlmaWVyKQorICAgICwgbV9jb25uZWN0aW9uKCZjb25uZWN0aW9uKQoreworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQoKQor
eworICAgIG1fY29ubmVjdGlvbiA9IG51bGxwdHI7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25v
d25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlkZW50aWZpZXIg
PSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50aWZpZXIp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBpZiAobV9p
ZGVudGlmaWVyLnRvVUludDY0KCkgPT0gKmlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcih0cnVlKTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OklzU2FtZUVudHJ5KG1faWRlbnRp
ZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcildKGJvb2wgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIocmVzdWx0KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxS
ZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRp
ZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJl
ZiB7ICp0aGlzIH0sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisg
ICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsg
Y29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAg
IGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24g
aXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OmNyZWF0ZShyZXN1bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVh
dGUoU3RyaW5nIHsgbmFtZSB9LCBXVEZNb3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9p
ZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rp
b24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24g
eyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAg
bV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6R2V0RGlyZWN0b3J5SGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZO
ZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJlZiB7ICp0aGlzIH0sIG5hbWUsIGNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29k
ZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0aW9uKQor
ICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAg
ICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShy
ZXN1bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShTdHJpbmcgeyBuYW1l
IH0sIFdURk1vdmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25P
cjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlv
bikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBt
X2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5
KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8g
ZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoIWVycm9yKQorICAgICAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlv
bkNvZGUoZXJyb3IudmFsdWUoKSkgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9
KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNv
bHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29u
bmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9y
YWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nvbm5l
Y3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpSZXNvbHZlKG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJy
b3IoKSkgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShyZXN1bHQudmFs
dWUoKSkpOworICAgIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmRiODQxMWVhMTg4
NWI4OGVmM2Q5ZjUzMGU5NmYzNWNhMDgzNDY4ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5LmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2Vi
Q29yZS9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENv
bm5lY3Rpb247Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBj
bGFzcyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFz
cyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNz
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3By
aXZhdGU6CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3Rl
bUhhbmRsZUltcGwKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRl
bnRpZmllcigpIHsgcmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBp
c1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6RXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0Rmls
ZUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVT
eXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KGNv
bnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9p
ZCByZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQ
dHI8SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMy
MWM0MzNkYjU3ZDkxMTczZTcwNDY4N2U0MWEuLjkxYWJhZWM4OTI2ZDczODVmYzYxNTkxYzk1Mjlm
MGFhYzc1MjU4MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiAr
MjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0
aW9uLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5j
bHVkZSAiTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC0zOCwxNiAr
MzksMzEgQEAgUmVmPFdlYlN0b3JhZ2VDb25uZWN0aW9uPiBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6
Y3JlYXRlKCkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJTdG9yYWdlQ29ubmVjdGlvbik7
CiB9CiAKLXZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3RlZChXZWJDb3JlOjpDbGll
bnRPcmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpnZXRQZXJzaXN0ZWQoY29u
c3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpQZXJzaXN0ZWQob3Jp
Z2luKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlN0b3JhZ2VD
b25uZWN0aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViU3Rv
cmFnZUNvbm5lY3Rpb246OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmln
aW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7
CiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpQZXJzaXN0KG9yaWdpbiksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
KTsKIH0KIAordm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6ZmlsZVN5c3RlbUdldERpcmVjdG9y
eShjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIGNvbm5lY3Rp
b24gPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b24oKS5jb25uZWN0aW9uKCk7CisgICAgY29ubmVjdGlvbi5zZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6RmlsZVN5c3RlbUdldERpcmVjdG9yeShvcmln
aW4pLCBbd2Vha0Nvbm5lY3Rpb24gPSBtYWtlV2Vha1B0cihjb25uZWN0aW9uKSwgY29tcGxldGlv
bkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3Vs
dC5lcnJvcigpKSB9KTsKKworICAgICAgICBpZiAoIXdlYWtDb25uZWN0aW9uKQorICAgICAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6
OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRv
IGltcGwgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUocmVzdWx0LnZhbHVl
KCksICp3ZWFrQ29ubmVjdGlvbik7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihX
ZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoeyB9LCBXVEZNb3ZlKGlt
cGwpKSk7CisgICAgfSk7Cit9CisKIElQQzo6Q29ubmVjdGlvbiYgV2ViU3RvcmFnZUNvbm5lY3Rp
b246OmNvbm5lY3Rpb24oKQogewogICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5l
bnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5l
Y3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9y
YWdlQ29ubmVjdGlvbi5oCmluZGV4IDFjMGU2NjM2OWI1NmVkYjcwZTkzYTg4OWUzMjUwMzU2NjY5
MzM2ZTUuLjBkNmMwMWJhODIxY2JjNDU0MjdlZjc2ZDZiNmFlYmVjZDE2N2FiODQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29u
bmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJTdG9yYWdlQ29ubmVjdGlvbi5oCkBAIC0zMSw2ICszMSwxMSBAQCBuYW1lc3BhY2UgSVBDIHsK
IGNsYXNzIENvbm5lY3Rpb247CiB9CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5
cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU7Cit9CisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJTdG9yYWdlQ29ubmVjdGlv
biBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpTdG9yYWdlQ29ubmVjdGlvbiB7CkBAIC0zOCw4ICs0
Myw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFdlYlN0b3JhZ2VDb25uZWN0aW9uPiBjcmVh
dGUoKTsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRPcmln
aW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7Ci0gICAgdm9pZCBw
ZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJv
b2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGdldFBlcnNpc3RlZChjb25zdCBXZWJDb3JlOjpDbGll
bnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2
b2lkIHBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
Q29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+
PiYmKT4mJikgZmluYWw7CiAKICAgICBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24oKTsKIH07
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggYzUxYTFmOGVkNzYzNGRkZTE5MWI0MGI5NmI1MWUzMjVkMDMxMDU4Mi4uZTI0YmJk
OTQ2Y2QwYTgxYTFkMDhiZDQ0MDEyN2Q4NjFhYzRmNTY4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDIxLTA5LTIxICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAg
IEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9u
czoKKyAgICAgICAgKiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBz
dG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5
LWhhbmRsZS1iYXNpY3MuaHRtbDogQWRkZWQuCisKIDIwMjEtMDktMjAgIEF5dW1pIEtvamltYSAg
PGF5dW1pX2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI4MTEwMj8p
OiBbIE1hYyBdIG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQuaHRtbCBpcyBhIGZsYWt5IHRpbWVv
dXQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzNDM3YTVlMTQ3ZDdkZGE0MGQx
YmU5YmNjNzEwOWEyNjgwNWFlMmFjLi4yYTE3YTJiMTRkZTk4YzYwMjkwNWEzYzUzMTk1ZjM4YzUy
NzQ1OTZiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMyBAQAor
MjAyMS0wOS0yMSAgU2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBB
ZGQgaW5pdGlhbCBzdXBwb3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5l
bC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2lu
ZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNz
LWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVj
dGVkLnR4dDoKKwogMjAyMS0wOS0yMCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5j
b20+CiAKICAgICAgICAgSW1wbGVtZW50IGlucHV0LXNlY3VyaXR5CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpp
bmRleCBmNWRjYWNkMWUyYTE3M2VlZGZhYmMwMTY0YmRjZmYxYzdlYTllNDdjLi5lNGIzZGNhNDI1
NWQzMGVjOWJhZTgwYjIxMDhjNTdmYTcxMjc2YTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIw
MCw2ICsyMDAsNyBAQCBmYXN0L3NwZWVjaHJlY29nbml0aW9uL2lvcy8gWyBTa2lwIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgU2tpcCBdCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBTa2lwIF0KK3N0b3JhZ2Uv
ZmlsZXN5c3RlbWFjY2Vzcy8gWyBTa2lwIF0KIAogIyBhcHAtcHJpdmFjeS1yZXBvcnQgdGVzdHMg
cmVseSBvbiBXZWJLaXRBZGRpdGlvbnMKIGh0dHAvdGVzdHMvYXBwLXByaXZhY3ktcmVwb3J0LyBb
IFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDY5MGQyNzkzNDJlNmE4ZDk0OTk2OTFiMTlmNWNkOTY2NGJiNDAwOTYuLjFiNGRjOGI2
ZGE4MjZkNWRmMjNlN2ZhODk3ZmQxZWE2NzNiNGVkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1
ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3Jp
Z2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTIsNSArMiw1IEBACiBQQVNTIHNob3dE
aXJlY3RvcnlQaWNrZXIoKSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkgaWZyYW1lcy4K
IFBBU1MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0
YSBVUkkgaWZyYW1lcy4KIEZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5k
IHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBpZnJhbWUu
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVE
OiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElP
TjogVHlwZUVycm9yIgotRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3
aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJF
SkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJl
Y3RvcnkoKTogUkVKRUNURUQ6IE5vdFN1cHBvcnRlZEVycm9yIgorRkFJTCBuYXZpZ2F0b3Iuc3Rv
cmFnZS5nZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0
IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJz
aG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJz
aG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElPTjogVHlwZUVycm9yIgogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5k
ZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNDEyNGI3YmU0ZGNkYWFkNGFiOTMw
NzlkYjJkYzBkZTFjMzI3MmViNC4uMjE1YWI2NjBiZDA0YmViZWI2NTRmODJmMzZlYTEzMzdlMGIw
MmE3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUlu
ZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw3
ICsxLDcgQEAKIAotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20g
cGVuZGluZyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlv
bi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlcyBh
bmQgYmxvYnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5k
ZXhlZERCIHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGluZyB0
cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5k
bGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4
ZWREQi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4g
SW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA4MTVlNzVmNjMyZDRlZmNjOGQ2YjIxOTM0MzJiYTBj
Y2ZkOTE0NDM4Li44MzdlYWUxMDYyOGVkZjkzZjE3NTY4Y2I5MjMwYmEyY2I4ZDMzNWM2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwx
MCBAQAogCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMg
cmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2Ft
ZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhh
bmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5z
IHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkg
Zm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhl
IHNhbWUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVF
bnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3Rvcnkg
cmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1Nh
bWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50
aWNhbCBkaXJlY3RvcnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVzIHJldHVy
bnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5k
bGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2Ft
ZUVudHJ5IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3Ig
dGhlIHNhbWUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVu
dHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXgg
ZTNjYTdjNDY4ODI1MGY0NDcxNTg2NTIyYTg4OWNkZWFmZWZkMWY4NC4uMzk1ZWNhNTU0YmRkN2I4
YWIwMjJlZDUyYzkyZDQ0MzFkYzEyYTNjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBicm9hZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNl
cnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZy
YW1lLCBkZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDdhZjQxMTgzMWRjMGZiNmNiMjY1Yjg0M2IyYjBj
ZWY3MDNhMDA0YzMuLjRiMWM1YmUzYjc3ZDhmN2I2MzA0NmY5YTBhMTJkZWE2YzQ4Mjg4MTUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdl
cyB0byBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0
YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWls
IHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEg
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNl
bmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IHRvIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRv
IHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBw
b3J0IGluIGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBh
IHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFp
bCB0byBzZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2Ug
cG9ydCBpbiBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmln
aW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQg
aW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBz
ZW5kIG1lc3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IHRvIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJh
bWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNTNlOTBlMjNjNDkxZjU4OGQxYjVi
NmViZWMyMTIyZDdhY2NlODA2Yi4uODIxYzYxYzlmNGYxZWE0ZmIxNWNlMTExZDlmYzJmNzA2YTBi
YmM0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAK
IAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9y
dCBpbiBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdp
biBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9y
aWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2IgaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRl
eCBlNWRlYzA4YTk1M2NhNDA2ZTFhNGY1OThkZDhlNDRmMGFhNzk3N2I1Li5hOTM4NDdkMDAzNWIz
YmY3ZWFiNTU5ZTA0ODA0NWQwNmNiMDZiNTgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdl
UG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNDUxMDY1ZTMyMmRh
ZmUwNGJlYWUyMTQ5ZTUxNDBhYTY1YzM2ZjcwZC4uODFmNmY2MTA3ZjRhZmZhMTljMzg4ZWUxY2M4
ZDA0YjFhM2Q4NGVkZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGlj
YXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJh
bWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggODY0NWQ5M2VlNTcyMTU3OWJiOWVm
YzUyODI0NjQ0NDk3MjVjMTNlNy4uM2NlOWU4MzIyMGVkZDJiYmZhNzQ2ZDRjZWIyOTRkNjcwYTdk
NWM1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2Fu
ZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2IgaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdp
biBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdp
bmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBmMDk1OTk1ODk2M2YyZjRkNmE5
N2U4YTdiYTczNzRmYjUxZTgyZDRmLi42ZDk2MjY1ODQxOThiZTkwNzgxZWZjOTdiMWQwZmRjOGZi
MWY4YTg2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRv
dy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNzJmZjNmNTc0MTJkZDA4ZWM2
YTRiZjNjMDVmYzM2OGI4OWFmYWE2Ni4uMjRiNDZkZDU5YWNhMDc5MDRmZDY3Yjk5MTFmNzA3MDZh
ZDlhMjRiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
c2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDRjYTBmOTQ3MTBjOGUzZTA1Zjk1
YTA3NDcwOWNkODdhMDdiMjg1N2QuLjdlNjYxY2UwZjc5MzRmNjkzZDI2ZjM5MTdlMDc2ODQwZTcx
Y2RmOWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1y
ZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5
IEBACiAKLUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBz
aG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUo
KSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hv
dWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkg
b24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNo
b3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9w
dGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmUoKSB0byBy
ZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkg
b24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSBy
ZW1vdmVkIGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJl
Y3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1
cnNpdmUgb3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFu
ZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCAxZmM0NzQ4MDYyM2VhYjkzYmM5NmE5MzEwYTdjNTY2M2Y4NTg4MjMwLi43ODE3MWZmMGU0
ODc4ZWI0ODk5MDE1MDljZWI0NTgzZDg1N2E2Njg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiAr
MSwxMiBAQAogCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMg
Zm9yIG5vbi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1w
dHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERp
cmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxl
KGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2lu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoKSB3aGVuIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0
aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERp
cmVjdG9yeUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9yeSBleGlzdHMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNy
ZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBm
b3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRp
cmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhh
bmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUp
IHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUg
YWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4g
dGhlIGRpcmVjdG9yeSBleGlzdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVI
YW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAzMzZlNGRjNzM5MWIwODNmZDA0YWJi
ODE2NGJmMjYwYjBjZWQxNWQ4Li5hZTU1ZDEzNGQyNzQyNWUwN2NhMWM4NmZhNjdhNmZkNGNlODdm
NTRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDEzICsxLDEzIEBACiAKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9
ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFu
IGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlz
dGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxl
SGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2lu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1l
IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRs
ZShjcmVhdGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBz
YW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhh
bmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0
aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlM
IGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmls
ZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0
ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNl
KSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRo
b3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRo
ZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXRGaWxlSGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBz
ZXBhcmF0b3Igd2hlbiB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9y
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRp
b24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA5MmJhMDA2MWMxMTJkYjk5YTY5NmMwM2Zi
NGFiMGE4NzEwYWIzYmUxLi5mZTFmZmE5YzQ1YmY3ODkxOGM2OGJkODEyMjlkNzJlZTAzMDZhNGM1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1p
dGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSw4ICsxLDggQEAKIAotRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24g
ZG9lc24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBAQGFz
eW5jSXRlcmF0b3I6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3Mg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwga2V5czogZnVsbCBpdGVyYXRp
b24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXRlcmF0aW9u
IHdoaWxlIGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRv
ZXNuJ3QgY3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBAQGFzeW5jSXRl
cmF0b3I6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBn
YXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGFjNmZj
MTk0ODQ3OWMxN2Q5OGIwMzhiNzQ3ZDZiOTMwNmRiYzA5MmMuLjI4MTQ3MjI1YmRhODQ5MjhkYzMy
Njc2NDEwMGE0OWZmZGEyYmMwMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSwxMSBAQAogCi1GQUlMIHJlbW92ZUVu
dHJ5KCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8g
cmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFp
bCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIG9u
IGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1w
dHkgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCByZW1vdmVFbnRyeSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRy
eSgpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5
IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGly
ZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVt
b3ZlRW50cnkoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBz
dWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgp
IHdpdGggZW1wdHkgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hv
dWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgp
IHdpdGggYSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggNTU3MWYxMWQxY2YwMGQxMzllZmE5ZjhkYzZlOGM0MmMwYjFiMzM0MC4uZjVlNjUxYjFl
ZjFjN2YxMTk1YzZhNTdhMDcyNzM2NDIyNzEzYzI2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29s
dmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBSZXNvbHZl
IHJldHVybnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3Qg
cGF0aCB3aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hp
bGQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5z
IGVtcHR5IGFycmF5IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFz
Y2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZl
IHJldHVybnMgbnVsbCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50
ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0
cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMzMwMTBkNzE4NDUyMmJiMzcw
NWViMzhiNzM0YTNmYTBkMjY4NjZmYy4uM2I4YzBkOGRhYjAxODBlOTIzYzQ0Mzk3ZjY0MWM2NWRj
YWU3ZmQ5MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRp
dmUud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZp
bGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBz
LnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEF0
dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRs
ZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA5Y2YwMTlkMjU2OWNmZjQ5OGMxMDRmMTVjN2FmYWRhMWMxOTdh
NmM3Li5mN2MxNzA3M2FlZWZmOWFhZjBiNzI4Y2NiZTJhYjhlMWRkNjFhNTc4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1n
ZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgZ2V0
RmlsZSgpIHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0
aW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGUoKSBwcm92
aWRlcyBhIGZpbGUgdGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKaW5kZXggYTA2OTI2NjFkZDIzZDEwYzA5ZmZkNTllNmRiZTBiMGM4ZTJjNjBi
YS4uZDE1MjZjNTk5NTg2NjI1ZjMxNmE3Njc5OGY3MDE3NDhiODQ2ZmVlMCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxl
RmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBA
CiAKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdp
dGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBw
aXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFt
IG9iamVjdCB3aXRoIG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGgg
YSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQg
dG8gd2l0aCBhbiBBcnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29t
bWFuZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3
aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGY5N2U4MTJkNzcyYTY1NTE1N2E1ZGFjZWZjMTM1ZmMw
NjZiMGEyMmMuLjM3ZjdhNjRhZTlhNWYwMWRkZDg3ZjRhY2RhODc5YTU0YjY2NjQ4ZTggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1X
cml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzMSAr
MSwzMSBAQAogCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2Ig
dG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBzdHJpbmcg
dG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJv
IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNh
bGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcg
YXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdy
aXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFu
ZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIGNhbGxlZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQg
YmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlk
IHV0Zi04IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0
ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0
aCB3aW5kb3dzIGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVt
cHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3
aXRoIGEgdmFsaWQgdHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGly
ZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
YXRvbWljIHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMg
b24gY2xvc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdy
aXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xvc2UoKSBm
YWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVz
OiBjbG9zZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5
IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdy
aXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBp
ZiBmaWxlIGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0V3JpdGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBk
YXRhIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFy
YW1zOiBzZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBm
aWxlIHNob3VsZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMg
d2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgd3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9z
aXRpb24gYW5kIHN0cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEg
c3RyaW5nIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0
IGJleW9uZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdXRmLTgg
c3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEg
c3RyaW5nIHdpdGggdW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxpbmUg
ZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRl
KCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5
IGJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6
IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0
cmVhbXMgbWFrZSBhdG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRl
KCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3Bl
cmF0aW9uIG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRv
bWljIHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwg
ZXZlbiBpZiBmaWxlIGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFdyaXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBh
cmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHNlZWsg
bWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHdyaXRlKCkgd2l0aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVq
ZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKaW5kZXggNTAwOTI1NGE0ZjEwZTI3OTNiZDY0Yzg0MTk1NTkyNDUyMTJm
MmQxMS4uZTM4NTFmY2EzM2U0YzlkODM5NjE5MWI2ZDFkYmFlYWNmMGRhMzg5NCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmls
ZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwg
dHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJl
Y3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQg
ZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRh
YmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3Rp
bmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQg
d2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1
cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZz
ZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY29tbWFuZHMgYXJlIHF1
ZXVlZCwgc3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZh
aWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgZmFpbHMg
d2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9t
aWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4
aXN0aW5nRGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxp
emVkIHdpdGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGN1
cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNldCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0
cmVhbSBpcyB1bmxvY2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggZDIxZGVkNTQ5OTZlN2YwYWNjODgwNmZhN2U3ZTlhMjdlN2NmY2U0Ni4uZDhkY2ViZTQ4NzEw
MjMwOTM0NTNhZmFmYjhmM2QyNzJiZGY5M2Y2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTg2NCwzICs4NjQsNSBAQCBmdWxsc2NyZWVuL2Z1bGwtc2Ny
ZWVuLWVudGVyLXdoaWxlLWV4aXRpbmcuaHRtbCBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFBhc3MgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNj
ZXNzLyBbIFBhc3MgXQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iZWVmN2I2ZWM3Y2RiMGE2ZTEzMjEzMDliYWZmMDVlOTQ5NDEx
YmZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNj
ZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBA
CitUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJvb3RI
YW5kbGUubmFtZSBpcyAiIgorUEFTUyByb290SGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BB
U1MgZGlySGFuZGxlLm5hbWUgaXMgImRpciIKK1BBU1MgZGlySGFuZGxlLmtpbmQgaXMgImRpcmVj
dG9yeSIKK1BBU1MgaXNTYW1lRW50cnkgaXMgZmFsc2UKK1BBU1MgZmlsZUhhbmRsZS5uYW1lIGlz
ICJmaWxlIgorUEFTUyBmaWxlSGFuZGxlLmtpbmQgaXMgImZpbGUiCitQQVNTIGhhbmRsZU5hbWVz
Lmxlbmd0aCBpcyAyCitQQVNTIGhhbmRsZU5hbWVzWzBdIGlzICJkaXIiCitQQVNTIGhhbmRsZU5h
bWVzWzFdIGlzICJmaWxlIgorUEFTUyBjcmVhdGVFcnJvci50b1N0cmluZygpIGlzICJOb3RGb3Vu
ZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4iCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0
bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRs
ZS1iYXNpY3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MzczZDg2ZTM3ZWVkODUxNGY0Mzc2MzRlZmQ0ZTMw
YThmODBmZGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lz
dGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKQEAgLTAsMCArMSwxMDAgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Citk
ZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLiIpOworCit2YXIgcm9vdEhhbmRsZSwgZGlySGFuZGxlLCBm
aWxlSGFuZGxlLCBpc1NhbWVFbnRyeSwgaGFuZGxlTmFtZXMsIGNyZWF0ZUVycm9yOworCitmdW5j
dGlvbiBmaW5pc2hUZXN0KGVycm9yKQoreworICAgIGlmIChlcnJvcikgeworICAgICAgICB0ZXN0
RmFpbGVkKGVycm9yKTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9u
IGdldERpcmVjdG9yeSgpIHsKKyAgICBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKS50
aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgcm9vdEhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLm5hbWUiLCAiIik7CisgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicm9vdEhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAg
ICAgICBjcmVhdGVEaXJlY3RvcnlIYW5kbGUocm9vdEhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVy
cm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5j
dGlvbiBjcmVhdGVEaXJlY3RvcnlIYW5kbGUoZnJvbUhhbmRsZSkgeworICAgIGZyb21IYW5kbGUu
Z2V0RGlyZWN0b3J5SGFuZGxlKCJkaXIiLCB7ICJjcmVhdGUiIDogdHJ1ZSB9KS50aGVuKChoYW5k
bGUpID0+IHsKKyAgICAgICAgZGlySGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImRpckhhbmRsZS5uYW1lIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImRpckhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjaGVj
a0lmU2FtZUVudHJ5KHJvb3RIYW5kbGUsIGRpckhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9y
KSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlv
biBjaGVja0lmU2FtZUVudHJ5KGhhbmRsZTEsIGhhbmRsZTIpCit7CisgICAgaGFuZGxlMS5pc1Nh
bWVFbnRyeShoYW5kbGUyKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaXNTYW1lRW50cnkg
PSByZXN1bHQ7CisgICAgICAgIHNob3VsZEJlRmFsc2UoImlzU2FtZUVudHJ5Iik7CisgICAgICAg
IGNyZWF0ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCB0cnVlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9u
IGNyZWF0ZUZpbGVIYW5kbGUoZnJvbUhhbmRsZSwgY3JlYXRlKSB7CisgICAgbGV0IG9wdGlvbnMg
PSB7ICJjcmVhdGUiIDogY3JlYXRlIH07CisgICAgZnJvbUhhbmRsZS5nZXRGaWxlSGFuZGxlKCJm
aWxlIiwgb3B0aW9ucykudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGZpbGVIYW5kbGUgPSBo
YW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5uYW1lIiwg
ImZpbGUiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLmtpbmQi
LCAiZmlsZSIpOworICAgICAgICByZXNvbHZlUGF0aCgpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBpZiAoY3JlYXRlKSB7CisgICAgICAgICAgICBmaW5pc2hUZXN0KGVycm9y
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBjcmVhdGVFcnJvciA9
IGVycm9yOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNyZWF0ZUVycm9yLnRvU3Ry
aW5nKCkiLCAiTm90Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUu
Iik7CisgICAgICAgIGZpbmlzaFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVzb2x2
ZVBhdGgoKSB7CisgICAgcm9vdEhhbmRsZS5yZXNvbHZlKGZpbGVIYW5kbGUpLnRoZW4oKHJlc3Vs
dCkgPT4geworICAgICAgICBoYW5kbGVOYW1lcyA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmUo
ImhhbmRsZU5hbWVzLmxlbmd0aCIsICIyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiaGFuZGxlTmFtZXNbMF0iLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiaGFuZGxlTmFtZXNbMV0iLCAiZmlsZSIpOworICAgICAgICByZW1vdmVFbnRyeShkaXJIYW5k
bGUsICJmaWxlIik7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRl
c3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZW1vdmVFbnRyeShmcm9tSGFuZGxl
LCBuYW1lKSB7CisgICAgZnJvbUhhbmRsZS5yZW1vdmVFbnRyeShuYW1lKS50aGVuKChyZXN1bHQp
ID0+IHsKKyAgICAgICAgLy8gTm8gZXJyb3IgbWVhbnMgaXQgaXMgcmVtb3ZlZC4KKyAgICAgICAg
Y3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIGZhbHNlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2lmICh3aW5k
b3cudGVzdFJ1bm5lcikgeworICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGdldERpcmVj
dG9yeSgpOworfSBlbHNlIHsKKyAgICBmaW5pc2hUZXN0KCJ3aW5kb3cudGVzdFJ1bm5lciBpcyBu
b3QgYXZhaWxhYmxlIik7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438902</attachid>
            <date>2021-09-21 19:04:17 -0700</date>
            <delta_ts>2021-09-21 21:47:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210921190416.patch</filename>
            <type>text/plain</type>
            <size>187691</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uZTI5M2M5ODQ3MTMwOWI5Y2Y0ZGRiOGNiOTBhZGE3
MjUyNWYzMmE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDIxLTA5LTIxICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOiBEZWxldGVkLgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpG
aWxlU3lzdGVtSGFuZGxlOjppbXBsIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAg
ICogTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9k
dWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2Vy
Ojpjb25uZWN0aW9uSW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0
b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAg
ICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
SlNOZXdseUNyZWF0ZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlw
dExvYWRlci5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6
CisKIDIwMjEtMDktMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0NvY29hXSBNYWtlIEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBl
cmltZW50YWwgRmVhdHVyZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNk
Nzc0MDcxZjU1NDdiLi5iYmQwOGUxOWM4OGQ5Mjc3MWY4MGEwYmExNzg3MTUyN2ZmMWVkZTE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwpAQCAtMSwzICsxLDg4IEBACisyMDIxLTA5LTIxICBTaWh1aSBMaXUgIDxzaWh1aV9s
aXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lz
dGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEludHJvZHVjZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUg
aGFuZGxlcy4gRWFjaCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAor
ICAgICAgICBGaWxlU3lzdGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UHJvY2Vzczo6cmVtb3ZlU3RvcmFnZU1hbmFnZXJGb3JTZXNzaW9uKToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaDogQWRkZWQuCisgICAg
ICAgIChXZWJLaXQ6OmNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmlzU2FtZUVu
dHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RD
cmVhdGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6cGF0aCBjb25zdCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaDogQWRkZWQuCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6dW5yZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZSk6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
Lmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAg
ICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9y
eSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xvc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZy
b21Db25uZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6cmVzb2x2ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6Y2xlYXJTdG9yYWdlRm9yVGVzdGluZyk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzZXNzaW9uSUQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6Y29u
bmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlQnVja2V0Ojp0eXBlU3RvcmFnZVBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25D
bG9zZWQpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1
Y2tldCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToK
KyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdl
TWFuYWdlci5oOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAg
ICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6CisgICAgICAgICogU291
cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkpOgorICAgICAgICAoV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0
RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpnZXRQZXJzaXN0ZWQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdCk6CisgICAgICAgIChXZWJLaXQ6
OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3RlZCk6IERlbGV0ZWQuCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oOgor
CiAyMDIxLTA5LTE5ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAg
ICAgICAgIFRlYWNoIGBXZWJLaXQ6OmNyZWF0ZVNoYXJlYWJsZUJpdG1hcGAgdG8gc25hcHNob3Qg
dmlkZW8gZWxlbWVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2Ug
Yi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGY0MTEzMzRkNmI3MTQ3MzcwNTcw
NmNlMDVmNGRjNjEwNDg3Y2E3N2UuLjU1YzUwMmQ1YjA5N2MzNDIyMjk1YThlMmZkN2Y1NjgzYjU3
ZWQwNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtNDAsNiArNDAsNyBAQCBzZXQoV2ViQ29yZV9Q
UklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtRmlsZUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuaAorICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL1N0b3JhZ2VNYW5hZ2VyRmls
ZVN5c3RlbUFjY2Vzcy5oCiAKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAppbmRleCBkOTVkNjkyNDNm
NTA0MDlkZTMyNmZhYTlhY2ZlMDBjYTFmNmRhMmUxLi5kYmIwOGFkNWM2Zjg5ZTZhNjEzY2VlZjUz
ZWM2Mjk5NmJhYTQwNGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwCkBAIC0yNiw0MSArMjYsNjQgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCisjaW5jbHVkZSAiSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZT4gRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVt
SGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShuYW1lKSkK
K0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCisgICAgOiBGaWxl
U3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlOjpnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0
aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+IG9wdGlvbnMs
IERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYm
IHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVk
RXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0Rmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZN
b3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQu
aGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0
LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5y
ZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9u
YWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYg
cHJvbWlzZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETElu
dGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVu
dGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9u
cy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdldERpcmVjdG9yeUhhbmRsZShXVEZNb3Zl
KG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShh
dXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRp
b24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFs
dWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVt
b3ZlRW50cnkoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlz
ZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoU3RyaW5nJiYg
bmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1vdmVPcHRp
b25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQogewotICAg
IHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxl
bWVudGVkIl9zIH0pOworICAgIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkgPSBvcHRpb25zID8gb3B0
aW9ucy0+cmVjdXJzaXZlIDogZmFsc2U7CisgICAgaW1wbCgpLnJlbW92ZUVudHJ5KFdURk1vdmUo
bmFtZSksIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1
dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1
bHQpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZXNv
bHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVk
PElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBpbXBsKCkucmVzb2x2ZShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUo
cHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVs
ZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVh
c2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKaW5kZXggNGFmMWQ5ZGI3MjQyODQ5
MjQ3NDI5MWFkZWQ0OGM5NDdmNDM0NTAyYi4uN2M0N2U3NTVlYzBhOTZkMGJmMjU5ZWU1NDNjMjVl
NDZmYWYxMDQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCkBAIC0z
MSw3ICszMSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRmlsZVN5c3RlbUZpbGVI
YW5kbGU7CiAKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIGZpbmFsIDogcHVi
bGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZSk7CiBwdWJsaWM6CiAgICAgc3RydWN0IEdldEZpbGVPcHRpb25z
IHsKQEAgLTQ2LDE0ICs0NiwxOCBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgcmVjdXJzaXZlIHsg
ZmFsc2UgfTsKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPiBjcmVhdGUoU3RyaW5nJiYpOwotICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShjb25zdCBTdHJp
bmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJy
ZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik7Ci0gICAgdm9pZCBnZXRE
aXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldERpcmVj
dG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU+PiYmKTsKLSAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYg
bmFtZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZv
aWQ+JiYpOwotICAgIHZvaWQgcmVzb2x2ZShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJv
bWlzZURlZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOworICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0cmlu
ZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRs
ZShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldEZpbGVPcHRpb25zPiwgRE9NUHJvbWlz
ZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpOworICAgIHZv
aWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGly
ZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4+JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFt
ZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+
JiYpOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOwogCiBwcml2YXRlOgotICAgIGV4cGxp
Y2l0IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVH
SU4oV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSkKKyAgICBzdGF0aWMgYm9vbCBp
c1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKSB7IHJldHVybiBo
YW5kbGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9y
eTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKaW5kZXggOWVkYzIwNGUxN2VlMTMzNGYzMDc3MGUyYmE3NDUwNTlkYTU4NzBhMi4u
ZjE1ZTAxMWQ2ZjYzZTU3MDM5YzZlOTQ2MjdlYTI1YWQwOWYwZTEyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKICNpbmNs
dWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgogCkBAIC0zMywxMyArMzQsMTMgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbUZp
bGVIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFu
ZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmls
ZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVt
RmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1G
aWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSkK
LSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RG
TW92ZShuYW1lKSkKK0ZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShT
dHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZp
bGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RGTW92ZShuYW1l
KSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAppbmRl
eCAwYTdmYTRlMzhiOGE1MDQ4MGYzZTMyMjc5ZGMzOTkxYzA0ZTNjYjkxLi40ODI5YmIyNDE3Nzlj
NzU0ZWE3YTU4N2FlNmQxYTFlOTI3MmRkMzEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aApAQCAtMzQsMTEgKzM0LDE1IEBAIGNsYXNzIEZpbGU7CiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhh
bmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVm
PEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYpOworICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKICAgICB2b2lkIGdldEZpbGUoRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQg
RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2Vi
Q29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZTsgfQorU1BFQ0lBTElaRV9UWVBFX1RS
QUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCmluZGV4IDIxMjFiMWNjMjUxNTE4YmI5
NWRmMDY5NDExYzIxMTJiNjA4NTBmYmYuLjRhZjYxMTA4YjE3MWYyNjdhNDkyZmI2ZTU1MDIwNDZh
NjJjZDE0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKQEAgLTMzLDE1ICszMywyMyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lz
dGVtSGFuZGxlKTsKIAotRmlsZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lz
dGVtSGFuZGxlOjpLaW5kIGtpbmQsIFN0cmluZyYmIG5hbWUpCitGaWxlU3lzdGVtSGFuZGxlOjpG
aWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiAgICAgOiBtX2tpbmQoa2luZCkK
ICAgICAsIG1fbmFtZShXVEZNb3ZlKG5hbWUpKQorICAgICwgbV9pbXBsKFdURk1vdmUoaW1wbCkp
CiB7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCitG
aWxlU3lzdGVtSGFuZGxlOjp+RmlsZVN5c3RlbUhhbmRsZSgpID0gZGVmYXVsdDsKKwordm9pZCBG
aWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUsIERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpIGNvbnN0CiB7Ci0gICAgcHJv
bWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50
ZWQiX3MgfSk7CisgICAgaWYgKG1fa2luZCAhPSBoYW5kbGUua2luZCgpIHx8IG1fbmFtZSAhPSBo
YW5kbGUubmFtZSgpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZXNvbHZlKGZhbHNlKTsKKwor
ICAgIG1faW1wbC0+aXNTYW1lRW50cnkoaGFuZGxlLmltcGwoKSwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2Uuc2V0dGxl
KFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZS5oCmluZGV4IDc1NGU0OTQxOWJiNjM3ZjE3ZjA3ZmQ4MDMxOTlmMjIx
ODI3Njk5N2EuLmU1Y2Y3MDIzYTY5NTlkNjhkMzk1NDFmMDY3MDc2ZWQ3M2JmNmZlYTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1IYW5kbGUuaApAQCAtMzEsMjkgKzMxLDMyIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBET01Qcm9taXNlRGVmZXJyZWQ7CisKK2NsYXNz
IEZpbGVTeXN0ZW1IYW5kbGVJbXBsOwogZW51bSBjbGFzcyBQZXJtaXNzaW9uU3RhdGUgOiB1aW50
OF90OwogCiBjbGFzcyBGaWxlU3lzdGVtSGFuZGxlIDogcHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5
c3RlbUhhbmRsZT4gewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUhhbmRs
ZSk7CiBwdWJsaWM6CisgICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZSgpOworCiAgICAgZW51
bSBjbGFzcyBLaW5kIDogdWludDhfdCB7CiAgICAgICAgIEZpbGUsCiAgICAgICAgIERpcmVjdG9y
eQogICAgIH07Ci0KLSAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0Owot
CiAgICAgS2luZCBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9CiAgICAgY29uc3QgU3Ry
aW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9CisgICAgRmlsZVN5c3RlbUhhbmRs
ZUltcGwmIGltcGwoKSBjb25zdCB7IHJldHVybiBtX2ltcGwuZ2V0KCk7IH0KIAotICAgIHZvaWQg
aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExCb29sZWFuPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmLCBE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJikgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAg
ICBGaWxlU3lzdGVtSGFuZGxlKEtpbmQsIFN0cmluZyYmIG5hbWUpOworICAgIEZpbGVTeXN0ZW1I
YW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsK
IAogcHJpdmF0ZToKICAgICBLaW5kIG1fa2luZCB7IEtpbmQ6OkZpbGUgfTsKICAgICBTdHJpbmcg
bV9uYW1lOworICAgIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4gbV9pbXBsOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCmluZGV4IDIwOGU3NDVj
YzNiZmM0Yzc5NzZlYzAyOGUxYjRkZDYyYWFmZDAzMDguLjliZDAxMDAxMWJmM2M1Yzg3N2RlNjgz
ZDZhYTgxNmRiZWFhMTBmYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKQEAgLTI5LDYgKzI5
LDcgQEAgZW51bSBGaWxlU3lzdGVtSGFuZGxlS2luZCB7CiB9OwogCiBbCisgICAgQ3VzdG9tVG9K
U09iamVjdCwKICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKSwKICAgICBFbmFibGVkQnlTZXR0
aW5nPUZpbGVTeXN0ZW1BY2Nlc3MsCiAgICAgU2VjdXJlQ29udGV4dApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZUltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNmFiNmU1YzYwZGZkZWFiMTQxYTQyNDFjMGE1N2FmYjky
ZmZmNjg3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNz
IEV4Y2VwdGlvbk9yOworCitjbGFzcyBGaWxlU3lzdGVtSGFuZGxlSW1wbCA6IHB1YmxpYyBSZWZD
b3VudGVkPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+Rmls
ZVN5c3RlbUhhbmRsZUltcGwoKSB7IH0KKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IHN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpc1Nh
bWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8Ym9vbD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RmlsZUhhbmRs
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNl
cHRpb25PcjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSA9IDA7CisgICAg
dmlydHVhbCB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNp
dmUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEw
YzhiMzFmOTRiNjZhZjA4Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3
MzY3MDRjYjIyNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7
CiAgICAgICAgIH0KIAotICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAg
dm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAg
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJz
aXN0KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQorICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAg
ICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisK
KyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7Cisg
ICAgICAgIH0KICAgICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0
aW9uKCkgZmluYWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3Jh
Z2VDb25uZWN0aW9uLmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3
NTUzMy4uMGE0MDA3M2I0ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAg
LTI1LDE4ICsyNSwyMiBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBs
YXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsK
IAogY2xhc3MgU3RvcmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29u
bmVjdGlvbj4gewogcHVibGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBk
ZWZhdWx0OwotICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lz
dChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0
KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRP
cmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
Y3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLjZkM2I0
MGUwMGZhMmQxZDdlNGZiMGE5NzNmYzE1MTU0YTU1YmZhNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAg
QEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2lu
LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNl
LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFu
YWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQor
c3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2Vw
dGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4g
cHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3Ig
ZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBj
b250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAo
IWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJf
cyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAg
ICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAK
LSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICgh
b3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVj
dGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9y
aWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4o
KS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBj
b25uZWN0aW9uSW5mby5jb25uZWN0aW9uLmdldFBlcnNpc3RlZChjb25uZWN0aW9uSW5mby5vcmln
aW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
ewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAgICB9KTsKIH0KIAogdm9p
ZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4m
JiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVybiBwcm9t
aXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2Vz
IG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBj
b25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9P
ckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0byBjb250ZXh0ID0gbV9u
YXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBpZiAoIWNvbnRleHQpCi0g
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJv
ciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8qIG9yaWdpbiA9
IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmlnaW4pCi0gICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk9yaWdp
biBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNpc3QoeyBj
b250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0g
V1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29u
bmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1
ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3QoY29ubmVj
dGlvbkluZm8ub3JpZ2luLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGJvb2wgcGVyc2lz
dGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAg
fSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24g
eyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBhdXRvIGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJv
bWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkp
OworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24u
cmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9uSW5mby5vcmlnaW4sIFtwcm9taXNl
ID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAo
cmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0
KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShy
ZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3Rv
cmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3
MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0
ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDog
cHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2
YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAg
IHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4g
Y29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9y
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUy
NTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNw
cAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50
cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBi
aW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNI
VE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25D
dXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4u
NjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsy
ODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4
MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlG
IC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9u
UnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGlu
Z1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5
MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBt
aXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBu
ZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29y
bmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsg
fTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVB
NTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkg
QEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEw
MDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMz
OEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxU
YWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAv
KiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9y
YWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAw
NTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxl
U3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9
OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlC
RDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5
NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFu
ZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJD
OUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdG
MjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29u
dGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4
MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2
NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3
MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsx
MTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFu
Z2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQw
QUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBC
b3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZG
MUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFu
ZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1
RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJ
bldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAx
MTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0
YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxp
bmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiAr
MjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0
Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5
c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyog
SlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBB
QThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMy
NEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJ
CUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAq
LywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RC
IC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1
MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQz
RTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAq
LywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAw
OTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQz
RTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVt
SGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1
IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAz
MUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBB
ODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNs
dWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNh
bEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3Rl
bUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3Qs
IGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0
ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdy
YXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhh
bmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4
IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJj
YjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5o
IgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRl
YWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApA
QCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25z
ZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2
aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjViMWIzZTc0NmM5NjkyOTI2NGJhZmRm
OGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1ZDVjMjE2MGQ3NmE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtNDYx
LDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFkZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vz
c2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0CiAKIHZvaWQgTmV0d29ya1Byb2Nl
c3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3ZlKHNlc3Npb25JRCk7CisgICAgaWYg
KGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRha2Uoc2Vzc2lvbklEKSkKKyAgICAg
ICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6Zm9yRWFjaE5l
dHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0d29ya1Nlc3Npb24mKT4mIGZ1bmN0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZGZmZTIyYTllOGRjYzVi
ODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApAQCAtMCww
ICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxXZWJDb3Jl
L0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCituYW1lc3Bh
Y2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhf
dCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1lLAorICAgIEludmFsaWRNb2Rp
ZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25vd24KK307CisKK2lubGluZSBX
ZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9yKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAgIH0KK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVt
VHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4geworICAgIHVzaW5nIHZhbHVl
cyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUsCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbiwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgorICAgID47Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmVjZmI1Y2UyN2FiN2M1MzNhZmEyZDFiZTllZWY2NDE2YjgwOGY1YjIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgT1MoV0lORE9X
UykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UKK2NvbnN0ZXhw
ciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYg
bWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKQorICAgIDog
bV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcjo6Z2VuZXJhdGVU
aHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAg
LCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9uYW1l
KFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3BhdGguaXNFbXB0eSgpKTsKKworICAg
IHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjptYWtlQWxsRGlyZWN0b3JpZXMobV9w
YXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKG1fcGF0aCkp
CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbTo6
b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Blbk1vZGU6OldyaXRlKTsKKyAgICAg
ICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7CisgICAgfQorfQorCit2b2lkIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRl
bnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIobV9wYXRoID09IHBh
dGgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFu
ZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgVHlwZSB0eXBlLCBTdHJpbmcmJiBuYW1l
LCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVk
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChtX3R5cGUgIT0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaCkpOworCisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7
CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFs
aWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUgPT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1l
LmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpKTsK
KworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudCht
X3BhdGgsIG5hbWUpOworICAgIG1fbWFuYWdlci0+Y3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIHR5
cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGU6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUo
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUsIFdURk1vdmUo
bmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVs
ZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1f
dHlwZSAhPSBUeXBlOjpEaXJlY3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRo
ID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7Cisg
ICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpkZWxl
dGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAgICAg
ICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAgICAg
ICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247CisgICAg
ICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBhdGgp
KQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bjsK
KyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7Cisg
ICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
bWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAg
aWYgKCFwYXRoLnN0YXJ0c1dpdGgobV9wYXRoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5z
dWJzdHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN0UGF0
aC5zcGxpdChwYXRoU2VwYXJhdG9yKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZTQyYzFlMGE1YTJhNmZiM2E3YjE3
NGM1ZmQxZDNmYmE5ZGVmM2E3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2
MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5o
IgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5j
bHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6
IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1h
a2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxp
emF0aW9uOjpFYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgor
ICAgIGVudW0gY2xhc3MgVHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJp
bmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9Cisg
ICAgY29uc3QgU3RyaW5nJiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICB2
b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6
Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5
SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQg
cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworCitwcml2YXRlOgorICAgIHZvaWQgcmVxdWVzdENy
ZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBTdHJpbmcmJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsK
KworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7Cisg
ICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBl
IG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVk
ZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVu
dGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBh
N2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNw
cApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7Cisg
ICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5k
bGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRs
ZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlm
aWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50
aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxw
dHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2Nj
N2YwZjI4ODAyMzI1MDdiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCww
ICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0
aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
Jik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmIyMDhhNDI0ZjVmZGYwMmQ2
Y2E4OTc5ZDIxMjE0OGI2Nzc5OTUxOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0w
LDAgKzEsMTA3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRo
KSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBm
b3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0
cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhw
ZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtu
b3duKSk7CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBh
dGgpOworICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpGaWxlTm90Rm91bmQpKTsKKworICAgIGlmIChmaWxlRXhpc3RzKSB7CisgICAgICAg
IGF1dG8gZXhpc3RpbmdGaWxlVHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAg
ICAgICBpZiAoIWV4aXN0aW5nRmlsZVR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikp
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVt
U3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRs
ZSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBXVEZN
b3ZlKHBhdGgpLCBXVEZNb3ZlKG5hbWUpKTsKKyAgICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIg
PSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5z
dXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZdIHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3It
PnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVy
SGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5h
ZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyKTsKK30KKworY29uc3QgU3RyaW5nJiBGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZmluZChp
ZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxlcy5lbmQoKSA/IGVtcHR5
U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
bikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxl
cyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQoKSk7Cisg
ICAgaWYgKGhhbmRsZXMgPT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVl
KSB7CisgICAgICAgIGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLnRha2UoaGFuZGxlSWRlbnRpZmll
cik7CisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVy
KTsKKyAgICB9CisgICAgbV9oYW5kbGVzQnlDb25uZWN0aW9uLnJlbW92ZShoYW5kbGVzKTsKK30K
Kwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisK
KyAgICBjcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5
cGU6OkRpcmVjdG9yeSwgU3RyaW5nIHsgbV9wYXRoIH0sIHsgfSwgdHJ1ZSwgV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTlkNjYwMTFmMzUwNzk5YjIzMWI1ZjViYTY3
YTc4YWUzMWYzMzA5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBAIC0wLDAgKzEsNTQgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgi
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoKTsKKworICAg
IHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICBjb25z
dCBTdHJpbmcmIGdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3Rl
ZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I+KT4mJik7CisKK3ByaXZhdGU6CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiBtX3JlZ2lzdHJ5OworICAgIEhhc2hNYXA8SVBDOjpDb25u
ZWN0aW9uOjpVbmlxdWVJRCwgSGFzaFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXI+PiBtX2hhbmRsZXNCeUNvbm5lY3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZT4+IG1faGFuZGxlczsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmNwcAppbmRleCAzNjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMz
M2M3Li5hMWEzMjY4NDRhOGI2YTdhODA5M2FkZWQwZTc4NzI4OTI2OGU3ZmIwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0Ny
eXB0b0RpZ2VzdC5oPgpAQCAtNDUsNiArNDcsNyBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgog
ICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwYXRoID0gcGF0aC5pc29sYXRl
ZENvcHkoKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5ID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PigpOwog
ICAgICAgICBtX3BhdGggPSBwYXRoOwogICAgICAgICBpZiAoIW1fcGF0aC5pc0VtcHR5KCkpIHsK
ICAgICAgICAgICAgIGF1dG8gc2FsdFBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdD
b21wb25lbnQobV9wYXRoLCAic2FsdCIpOwpAQCAtNTMsMTggKzU2LDUwIEBAIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25J
RCwgY29uc3QgU3RyCiAgICAgfSk7CiB9CiAKK05ldHdvcmtTdG9yYWdlTWFuYWdlcjo6fk5ldHdv
cmtTdG9yYWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICBBU1NFUlQobV9jbG9zZWQpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xv
c2UoKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBpZiAobV9jbG9z
ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byYgY29ubmVjdGlvbiA6IG1fY29u
bmVjdGlvbnMpCisgICAgICAgIGNvbm5lY3Rpb24ucmVtb3ZlV29ya1F1ZXVlTWVzc2FnZVJlY2Vp
dmVyKE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSk7CisKKyAgICBtX2Nsb3NlZCA9IHRydWU7CisgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9XSgpIG11dGFibGUgeworICAgICAgICBtX2Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkgPSBudWxscHRyOworICAgICAgICBtX2xvY2Fs
T3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CisgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0
b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOworICAgIH0pOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0
aW9uJiBjb25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAg
ICBjb25uZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUuZ2V0KCksIHRo
aXMpOworICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2b2lkIE5ldHdv
cmtTdG9yYWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlvbihJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pKQorICAg
ICAgICByZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1l
KCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsg
KnRoaXMgfSwgcHJvdGVjdGVkQ29ubmVjdGlvbiA9IFJlZiB7IGNvbm5lY3Rpb24gfV0oKSB7Cisg
ICAgICAgIGZvciAoYXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3Rv
cmFnZU1hbmFnZXJzLnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXIt
PmNvbm5lY3Rpb25DbG9zZWQocHJvdGVjdGVkQ29ubmVjdGlvbi5nZXQoKSk7CisgICAgfSk7CiB9
CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBGaWxlU3lzdGVt
OjpTYWx0IHNhbHQpCkBAIC0xMTEsOSArMTQ2LDcyIEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0
CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiB9CiAKK3ZvaWQgTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
biwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKG9yaWdp
bikuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCptX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkpLmdldERpcmVjdG9yeShjb25uZWN0aW9uLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjppc1NhbWVFbnRyeShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01h
aW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgaGFuZGxlLT5pc1NhbWVFbnRy
eSh0YXJnZXRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3Zv
aWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgaGFuZGxlLT5nZXRGaWxlSGFuZGxl
KGNvbm5lY3Rpb24sIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRE
aXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVh
dGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAg
IGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5k
bGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLCBXVEZNb3Zl
KG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwor
fQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFs
PEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBB
U1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYg
KCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGhhbmRsZS0+cmVtb3ZlRW50cnkobmFtZSwgZGVs
ZXRlUmVjdXJzaXZlbHksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJn
ZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJp
bmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAg
IGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhw
ZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgaGFuZGxlLT5y
ZXNvbHZlKHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChbdGhpcywgcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpXSgpIG11dGFibGUgewogICAgICAgICBtX2xvY2FsT3JpZ2luU3Rv
cmFnZU1hbmFnZXJzLmNsZWFyKCk7CiAgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5h
Z2Vycy5jbGVhcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCmluZGV4IGY2ZGFlZDEzZjI2NzUz
NzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLmZhMGEwZWFlNzcyNTIwNTRiNjc1N2Y1ODk4NDVj
OGJlMGZjNDQ2NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI2LDYgKzI2LDggQEAK
ICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgpAQCAt
MzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2luOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6
V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdlTWFuYWdlciBmaW5hbCA6IHB1YmxpYyBJ
UEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6CiAgICAg
c3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IGNyZWF0ZShQQUw6OlNlc3Npb25JRCwg
Y29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDQsMjUgKzQ4LDM2IEBAIHB1YmxpYzoKICAgICB2
b2lkIHN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJik7
CiAKICAgICBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX3Nlc3Np
b25JRDsgfQorICAgIHZvaWQgY2xvc2UoKTsKICAgICB2b2lkIGNsZWFyU3RvcmFnZUZvclRlc3Rp
bmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKICAgICBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgcGF0aCk7CisgICAg
fk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwogICAgIE9yaWdpblN0b3JhZ2VNYW5hZ2VyJiBsb2Nh
bE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYpOwogCiAg
ICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgKGltcGxlbWVudGVkIGJ5IGdlbmVyYXRlZCBjb2Rl
KQogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNv
ZGVyJik7CiAKLSAgICAvLyBNZXNzYWdlIEhhbmRsZXJzCisgICAgLy8gTWVzc2FnZSBoYW5kbGVy
cwogICAgIHZvaWQgcGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogICAgIHZvaWQgcGVyc2lzdChjb25zdCBXZWJD
b3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAg
ICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwgY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4m
Jik7CisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYs
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBj
cmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7
CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lk
IHJlbW92ZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIHJl
c29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8VmVjdG9y
PFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CiAKICAgICBQQUw6OlNlc3Np
b25JRCBtX3Nlc3Npb25JRDsKICAgICBSZWY8V29ya1F1ZXVlPiBtX3F1ZXVlOwogICAgIFN0cmlu
ZyBtX3BhdGg7CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CisgICAgYm9vbCBtX2Nsb3Nl
ZCB7IGZhbHNlIH07CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5p
cXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdl
cnM7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5pcXVlX3B0cjxP
cmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKKyAg
ICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7IC8vIE1haW4gdGhy
ZWFkIG9ubHkuCisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnk+IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
aW5kZXggZmVjMjcxZTBlOGRlODk4ZmYzOTkyNmNiODY0MGVhMTBmMTc5OTU1MC4uYzZiNjk3OTU4
OTczZjZhMGM4ZWFkNmVmM2Y5OTRhMTQxZTNiZmJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5p
bgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0yNiw0ICsyNiwxMCBAQAogIG1lc3NhZ2VzIC0+IE5l
dHdvcmtTdG9yYWdlTWFuYWdlciB7CiAgICAgUGVyc2lzdGVkKHN0cnVjdCBXZWJDb3JlOjpDbGll
bnRPcmlnaW4gb3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCiAgICAgUGVyc2lzdChz
dHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wgcGVyc2lzdGVkKSBB
c3luYworICAgIEZpbGVTeXN0ZW1HZXREaXJlY3Rvcnkoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9y
aWdpbiBvcmlnaW4pIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5j
IFdhbnRzQ29ubmVjdGlvbgorICAgIElzU2FtZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChib29sIHJlc3VsdCkgQXN5bmMK
KyAgICBHZXRGaWxlSGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAo
RXhwZWN0ZWQ8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24K
KyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nhcnkp
IC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jIFdhbnRzQ29ubmVj
dGlvbgorICAgIFJlbW92ZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5KSAt
PiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHJlc3VsdCkg
QXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IHRhcmdldElkZW50aWZpZXIpIC0+IChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jCiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5h
Z2VyLmNwcAppbmRleCA3NWExYWVkMjQ5ZjkyODU5OTBmNjZjYTk2ODE3Mzc4OGVmNDdkMDU0Li5l
M2M3ZTY1MTgzOGEzMTM4YzkzYmY2OWJiZTU1NmFjZDRmZWVjZTA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdl
TWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2LDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5o
IgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogZW51bSBjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdl
cjo6U3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sIHsgQmVzdEVmZm9ydCwgUGVyc2lzdGVudCB9OwpA
QCAtMzgsMTIgKzQxLDM0IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRp
ZmllcikKICAgICB7CiAgICAgfQorCiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSgpIGNvbnN0
IHsgcmV0dXJuIG1fbW9kZTsgfQogICAgIHZvaWQgc2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZSBt
b2RlKSB7IG1fbW9kZSA9IG1vZGU7IH0KKworICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisgICAgeworICAgICAgICBpZiAobV9maWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIpCisgICAgICAgICAgICBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci0+
Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKKyAgICB9CisKKyAgICBTdHJpbmcgdHlwZVN0
b3JhZ2VQYXRoKGNvbnN0IFN0cmluZyYgc3RvcmFnZUlkZW50aWZpZXIpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9yb290UGF0aC5pc0VtcHR5KCkgPyBlbXB0eVN0cmluZygpIDogRmls
ZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcm9vdFBhdGgsIHN0b3JhZ2VJZGVu
dGlmaWVyKTsKKyAgICB9CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIGZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3Ry
eSkKKyAgICB7CisgICAgICAgIGlmICghbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpCisgICAg
ICAgICAgICBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA9IG1ha2VVbmlxdWU8RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyPih0eXBlU3RvcmFnZVBhdGgoIkZpbGVTeXN0ZW0iKSwgcmVnaXN0cnkp
OworCisgICAgICAgIHJldHVybiAqbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CisgICAgfQor
CiBwcml2YXRlOgogICAgIFN0cmluZyBtX3Jvb3RQYXRoOwogICAgIFN0cmluZyBtX2lkZW50aWZp
ZXI7CiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbV9tb2RlIHsgU3RvcmFnZUJ1Y2tldE1vZGU6OkJl
c3RFZmZvcnQgfTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2Vy
PiBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKIH07CiAKIE9yaWdpblN0b3JhZ2VNYW5hZ2Vy
OjpPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKQpAQCAtNTMsMTQgKzc4LDI5IEBA
IE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRo
KQogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6fk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCkgPSBkZWZh
dWx0OwogCi12b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KCkKK3ZvaWQgT3JpZ2lu
U3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0
aW9uKQoreworICAgIGlmIChtX2RlZmF1bHRCdWNrZXQpCisgICAgICAgIG1fZGVmYXVsdEJ1Y2tl
dC0+Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKK30KKworT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6OlN0b3JhZ2VCdWNrZXQmIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVja2V0KCkK
IHsKLSAgICBtX3BlcnNpc3RlZCA9IHRydWU7Ci0gICAgCiAgICAgaWYgKCFtX2RlZmF1bHRCdWNr
ZXQpCiAgICAgICAgIG1fZGVmYXVsdEJ1Y2tldCA9IG1ha2VVbmlxdWU8U3RvcmFnZUJ1Y2tldD4o
bV9wYXRoLCAiZGVmYXVsdCJfcyk7CiAKLSAgICBtX2RlZmF1bHRCdWNrZXQtPnNldE1vZGUoU3Rv
cmFnZUJ1Y2tldE1vZGU6OlBlcnNpc3RlbnQpOworICAgIHJldHVybiAqbV9kZWZhdWx0QnVja2V0
OworfQorCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KCkKK3sKKyAgICBtX3Bl
cnNpc3RlZCA9IHRydWU7CisgICAgZGVmYXVsdEJ1Y2tldCgpLnNldE1vZGUoU3RvcmFnZUJ1Y2tl
dE1vZGU6OlBlcnNpc3RlbnQpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIE9yaWdp
blN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCit7CisgICAgcmV0dXJuIGRlZmF1bHRCdWNrZXQo
KS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIocmVnaXN0cnkpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggOWU0MjE1YjNjNzAwYmQ0OTlkMDZl
M2I5MDRjMTRlZmQ2NTI4OWYzMC4uYmM2MmNmNDIyZjVhMzVkZDJlYzRiYmE2ODU2MWY3MWUxMGI2
ODk1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI1LDIyICsyNSwyOSBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAorY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjsKKwogY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXIgewogICAgIFdU
Rl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgogICAgIGV4cGxpY2l0IE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpOwogICAgIH5PcmlnaW5TdG9yYWdlTWFuYWdlcigpOwog
CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYpOwogICAgIGJvb2wg
cGVyc2lzdGVkKCkgY29uc3QgeyByZXR1cm4gbV9wZXJzaXN0ZWQ7IH0KICAgICB2b2lkIHBlcnNp
c3QoKTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImIGZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CiAKIHByaXZhdGU6CiAgICAg
ZW51bSBjbGFzcyBTdG9yYWdlQnVja2V0TW9kZSA6IGJvb2w7CiAgICAgY2xhc3MgU3RvcmFnZUJ1
Y2tldDsKKyAgICBTdG9yYWdlQnVja2V0JiBkZWZhdWx0QnVja2V0KCk7CiAKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8U3RvcmFnZUJ1Y2tldD4gbV9kZWZhdWx0QnVja2V0OwogICAgIFN0cmluZyBtX3Bh
dGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5
IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCBlNWNmZTBk
YTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJiMTViLi4zZjkzNmQyNTI5MDJlNTI0NzhlYjgx
MTA5YmUyNjhkYTA5NWU1YjhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkKQEAgLTMxNiw2ICszMTYsOCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2Fy
ZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywK
ICAgICAgICAgJ1dlYktpdDo6RGlzcGxheUxpbmtPYnNlcnZlcklEJywKICAgICAgICAgJ1dlYktp
dDo6RG93bmxvYWRJRCcsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3In
LAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXInLAog
ICAgICAgICAnV2ViS2l0OjpGb3JtU3VibWl0TGlzdGVuZXJJZGVudGlmaWVyJywKICAgICAgICAg
J1dlYktpdDo6R2VvbG9jYXRpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R3JhcGhp
Y3NDb250ZXh0R0xJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNl
cy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IDkzZGJhNmNkOTYwYjA4OTFi
MmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0NjIuLmQ5ZTJlOGZmZWVjNmM4Yjk1Y2ZkMTM5YTBmMGZhZjBj
OTU0ZTNkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291
cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTE1LDYgKzExNSw5IEBAIE5ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dPcmlnaW5TdG9yZS5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJv
Y2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlv
bi5jcHAgQG5vLXVuaWZ5CiAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKIApA
QCAtNjkyLDYgKzY5NSw3IEBAIFdlYlByb2Nlc3MvVXNlckNvbnRlbnQvV2ViVXNlckNvbnRlbnRD
b250cm9sbGVyLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9XZWJBdXRoZW50aWNh
dG9yQ29vcmRpbmF0b3IuY3BwCiBXZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhu
UHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCiAKK1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vz
c2lvblN0YXRlQ29udmVyc2lvbi5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2hhcmVh
YmxlQml0bWFwVXRpbGl0aWVzLmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCcm9h
ZGNhc3RDaGFubmVsUmVnaXN0cnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOTFmNzZiMzg5NGU5MTdjNTI3YzRmOTM4ZmVlZDg2
M2M3NzAxYzY5Li40MmJlY2E5ZDhmNGYwNzY2ZmVkYmIyOTEzMjcxMTRmNmJlNmE0MGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE0
NjksNiArMTQ2OSw5IEBACiAJCTkzMDg1RERGMjZFNUJDRjEwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaCAqLzsgfTsKIAkJOTMwODVERTAyNkU1QkNGRDAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlci5oICovOyB9OwogCQk5MzA4NURFMTI2RTVCRDEzMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oICovOyB9OworCQk5MzEyQkFENTI2RjMzQzI2MDBGRERG
NUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi87IH07CisJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1RiAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmggKi87IH07CisJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvci5oICovOyB9OwogCQk5MzIxRDU4NjFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVB
Y3Rpb25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzIxRDU4NTFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250
cm9sbGVyLmggKi87IH07CiAJCTkzMjFENThBMUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0
ZUFjdGlvblR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzIxRDU4OTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMjM2
MTFFMUIwMTVEQTgwMEZBOTIzMiAvKiBfV0tPdmVybGF5U2Nyb2xsYmFyU3R5bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjM2MTFEMUIwMTVEQTgw
MEZBOTIzMiAvKiBfV0tPdmVybGF5U2Nyb2xsYmFyU3R5bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQ4NSw2ICsxNDg4LDcgQEAKIAkJOTM1
NkYyREYyMTUyQjcyMzAwRTZENURGIC8qIFdlYlNXT3JpZ2luU3RvcmUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REYyMTUxQURGNDAwN0Y0
NTVGIC8qIFdlYlNXT3JpZ2luU3RvcmUuY3BwICovOyB9OwogCQk5MzU2RjJFMDIxNTJCNzUyMDBF
NkQ1REYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNEREMjE1MUFERjMwMDdGNDU1
RiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwICovOyB9OwogCQk5MzU2RjJF
MTIxNTJCNzY2MDBFNkQ1REYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNEUxMjE1MUFERjQwMDdG
NDU1RiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwICovOyB9OworCQk5MzVCNTc5QTI2RjUx
OTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1QjU3OTgyNkY1MTI3MDAw
OEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLzsgfTsKIAkJOTM1
RUVCOUIxMjc3NjE3QzAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTgxMjc3
NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNUVFQjlGMTI3NzYxQUMw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdL
QnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJOTM2OEVFREUyMzAzQTkwMjAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5h
Z2VyU2V0TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzNjhFRURDMjMwM0E4RDgwMEJEQjExQSAvKiBTdG9yYWdlTWFuYWdl
clNldE1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC00OTA0LDYgKzQ5MDgsMTQgQEAKIAkJ
OTMwODVEQ0MyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VS
ZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk5MzA4NURDRDI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
TWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVE
Q0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGll
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXJNZXNzYWdlc1JlcGxpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3
NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1
MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzVBMjZGMUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTFC
RTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIxRDU4NTFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1l
ZGlhdGVBY3Rpb25Db250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzIxRDU4NzFBMzhFRTc0MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9s
bGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0tJbW1lZGlh
dGVBY3Rpb25Db250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIx
RDU4OTFBMzhGMTk2MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00OTE4LDYgKzQ5MzAsOCBAQAogCQk5MzQyNTg4RjI1
NTVEQ0E1MDA1OUVFREQgLyogTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk5MzQyNTg5ODI1NUI1MzRCMDA1OUVFREQgLyogTWVkaWFQZXJtaXNzaW9u
VXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGVybWlz
c2lvblV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzRCNzI0MzE5
RjVCOUJFMDBBRTk2RDYgLyogV0tBY3Rpb25NZW51SXRlbVR5cGVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzVCNTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzNUI1Nzk5MjZGNTE5MkYwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk5MzVFRUI5NTEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9y
d2FyZExpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NjEyNzc2
MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTcxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0SXRlbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtOTY5MSw2ICs5NzA1LDE0IEBACiAJCTkzMDg1REMyMjZFMUJCNjUwMDBFQzZBNyAv
KiBzdG9yYWdlICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJ
CQk5MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICov
LAorCQkJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZS5jcHAgKi8sCisJCQkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmggKi8sCisJCQkJOTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oICovLAorCQkJCTkzNUI1Nzk5MjZGNTE5MkYwMDhC
NDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCAqLywKKwkJCQk5MzVC
NTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5o
ICovLAorCQkJCTkzMUEwNzUxMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuY3BwICovLAorCQkJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDMzI2RTFCQkJEMDAwRUM2QTcgLyogTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKIAkJCQk5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzcyNkUxQzZFRTAwMEVD
NkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbiAqLywKQEAgLTEwMDA2LDYg
KzEwMDI4LDggQEAKIAkJCQlDRDYxNzgxMTFFNkRFOTgwMDBGREE1N0QgLyogY29jb2EgKi8sCiAJ
CQkJMkQyOEYzREYxODg1Q0NCNDAwNEI5RUFFIC8qIGlvcyAqLywKIAkJCQlCQzExMUFERTExMkY1
QjlBMDAzMzdCQUIgLyogbWFjICovLAorCQkJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLywKKwkJCQk5MzFBMDc1QTI2RjFCOTY4
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovLAogCQkJCTFBNzI4
NDQ0MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcCAqLywKIAkJ
CQkxQTcyODQ0NTE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5oICov
LAogCQkJCUY0M0E5Q0RFMjVENzJFMkQwMDk5MEUyNiAvKiBTaGFyZWFibGVCaXRtYXBVdGlsaXRp
ZXMuY3BwICovLApAQCAtMTIxNzgsNiArMTIyMDIsMTAgQEAKIAkJCQkxQUE1NzVGQjE0OTZCNTI2
MDBBNEVFMDYgLyogRXZlbnREaXNwYXRjaGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzJFQkJE
NzI1MzdFQkFFMDAwNTUyQjMgLyogRXh0cmFQcml2YXRlU3ltYm9sc0ZvclRBUEkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTU3QjgyNjQ4MjMwNTBDNTEwMEI3MkVCMCAvKiBGaWRvU2VydmljZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1
RiAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1QjU3
OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ1MjZGMzNDMjYwMEZEREY1RiAvKiBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTAwQjk2NjFBMThFMjVBRTEwMENF
MUY4OCAvKiBGaW5kQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTkwQzFGNDEyNjRGRDcx
MDAzRTQ0RDQgLyogRmluZENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1OUM0QTU5
MThCODExNzQwMDdCRENCNiAvKiBGb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43YjJlYWM1ZGE2NmQ3YTU4NjVjNTgyZDA1ZDBjMDE2Y2ZlNzIxMDgzCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisg
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuaCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRl
ICJOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRXhj
ZXB0aW9uT3IuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg+CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eT4gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllciBpZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShpZGVudGlmaWVy
LCBjb25uZWN0aW9uKSk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICA6IG1faWRlbnRp
ZmllcihpZGVudGlmaWVyKQorICAgICwgbV9jb25uZWN0aW9uKCZjb25uZWN0aW9uKQoreworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQoKQor
eworICAgIG1fY29ubmVjdGlvbiA9IG51bGxwdHI7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25v
d25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlkZW50aWZpZXIg
PSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50aWZpZXIp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBpZiAobV9p
ZGVudGlmaWVyLnRvVUludDY0KCkgPT0gKmlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcih0cnVlKTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OklzU2FtZUVudHJ5KG1faWRlbnRp
ZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcildKGJvb2wgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIocmVzdWx0KTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5OjpnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJ
Zk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxS
ZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRp
ZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJl
ZiB7ICp0aGlzIH0sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisg
ICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsg
Y29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAg
IGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24g
aXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OmNyZWF0ZShyZXN1bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVh
dGUoU3RyaW5nIHsgbmFtZSB9LCBXVEZNb3ZlKGhhbmRsZSkpKTsKKyAgICB9KTsKK30KKwordm9p
ZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rp
b24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24g
eyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAg
bV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6R2V0RGlyZWN0b3J5SGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZO
ZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJlZiB7ICp0aGlzIH0sIG5hbWUsIGNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29k
ZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0aW9uKQor
ICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAg
ICAgICBhdXRvIGhhbmRsZSA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShy
ZXN1bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShTdHJpbmcgeyBuYW1l
IH0sIFdURk1vdmUoaGFuZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25P
cjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlv
bikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBt
X2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5
KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8g
ZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoZXJyb3IpCisgICAgICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9u
Q29kZShlcnJvci52YWx1ZSgpKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0p
OworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29s
dmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25u
ZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYgKCFpZGVudGlmaWVyKQorICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoVmVjdG9yPFN0cmluZz4geyB9KTsKKworICAgIG1fY29ubmVj
dGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
OlJlc29sdmUobV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgewor
ICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJv
cigpKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHJlc3VsdC52YWx1
ZSgpKSk7CisgICAgfSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZGI4NDExZWExODg1
Yjg4ZWYzZDlmNTMwZTk2ZjM1Y2EwODM0NjhkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNs
dWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKyNpbmNsdWRlIDxXZWJD
b3JlL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg+CisKK25hbWVzcGFjZSBJUEMgeworY2xhc3MgQ29u
bmVjdGlvbjsKK30KKworbmFtZXNwYWNlIFdlYkNvcmUgewordGVtcGxhdGU8dHlwZW5hbWU+IGNs
YXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKK2NsYXNz
IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3Mg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlSW1wbCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5PiBjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
LCBJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoKTsKKworcHJp
dmF0ZToKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJik7CisKKyAgICAvLyBGaWxlU3lzdGVt
SGFuZGxlSW1wbAorICAgIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyKCkgeyByZXR1cm4gbV9pZGVudGlmaWVyLnRvVUludDY0KCk7IH0KKyAgICB2b2lkIGlz
U2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXRGaWxl
SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5
c3RlbUZpbGVIYW5kbGU+PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVtb3ZlRW50cnkoY29u
c3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lk
IHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4mJikgZmluYWw7CisKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgIFJlZlB0
cjxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKaW5kZXggODg5NTA4YWE2YzczMzIx
YzQzM2RiNTdkOTExNzNlNzA0Njg3ZTQxYS4uOTFhYmFlYzg5MjZkNzM4NWZjNjE1OTFjOTUyOWYw
YWFjNzUyNTgxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCkBAIC0yNiw2ICsy
Niw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViU3RvcmFnZUNvbm5lY3Rp
b24uaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCIKICNpbmNs
dWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFn
ZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKQEAgLTM4LDE2ICsz
OSwzMSBAQCBSZWY8V2ViU3RvcmFnZUNvbm5lY3Rpb24+IFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpj
cmVhdGUoKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYlN0b3JhZ2VDb25uZWN0aW9uKTsK
IH0KIAotdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdGVkKFdlYkNvcmU6OkNsaWVu
dE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmdldFBlcnNpc3RlZChjb25z
dCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChi
b29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlBlcnNpc3RlZChvcmln
aW4pLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViU3RvcmFnZUNv
bm5lY3Rpb246OnBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJTdG9y
YWdlQ29ubmVjdGlvbjo6cGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdp
biwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsK
ICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OlBlcnNpc3Qob3JpZ2luKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OwogfQogCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5
KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgY29ubmVjdGlv
biA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bigpLmNvbm5lY3Rpb24oKTsKKyAgICBjb25uZWN0aW9uLnNlbmRXaXRoQXN5bmNSZXBseShNZXNz
YWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KG9yaWdp
biksIFt3ZWFrQ29ubmVjdGlvbiA9IG1ha2VXZWFrUHRyKGNvbm5lY3Rpb24pLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHJlc3VsdCkgbXV0YWJs
ZSB7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUocmVzdWx0
LmVycm9yKCkpIH0pOworCisgICAgICAgIGlmICghd2Vha0Nvbm5lY3Rpb24pCisgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6
VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8g
aW1wbCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShyZXN1bHQudmFsdWUo
KSwgKndlYWtDb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdl
YkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZSh7IH0sIFdURk1vdmUoaW1w
bCkpKTsKKyAgICB9KTsKK30KKwogSVBDOjpDb25uZWN0aW9uJiBXZWJTdG9yYWdlQ29ubmVjdGlv
bjo6Y29ubmVjdGlvbigpCiB7CiAgICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVu
c3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVj
dGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3Jh
Z2VDb25uZWN0aW9uLmgKaW5kZXggMWMwZTY2MzY5YjU2ZWRiNzBlOTNhODg5ZTMyNTAzNTY2Njkz
MzZlNS4uMGQ2YzAxYmE4MjFjYmM0NTQyN2VmNzZkNmI2YWViZWNkMTY3YWI4NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25u
ZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YlN0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTMxLDYgKzMxLDExIEBAIG5hbWVzcGFjZSBJUEMgewog
Y2xhc3MgQ29ubmVjdGlvbjsKIH0KIAorbmFtZXNwYWNlIFdlYkNvcmUgewordGVtcGxhdGU8dHlw
ZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTsKK30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlN0b3JhZ2VDb25uZWN0aW9u
IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OlN0b3JhZ2VDb25uZWN0aW9uIHsKQEAgLTM4LDggKzQz
LDkgQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWY8V2ViU3RvcmFnZUNvbm5lY3Rpb24+IGNyZWF0
ZSgpOwogCiBwcml2YXRlOgotICAgIHZvaWQgcGVyc2lzdGVkKFdlYkNvcmU6OkNsaWVudE9yaWdp
biYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKLSAgICB2b2lkIHBl
cnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0UGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVu
dE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZv
aWQgcGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3Rvcnko
Y29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+
JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigpOwogfTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMyNWQwMzEwNTgyLi5lMjRiYmQ5
NDZjZDBhODFhMWQwOGJkNDQwMTI3ZDg2MWFjNGY1NjhhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMjEtMDktMjEgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAg
QWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHN0
b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3Rvcnkt
aGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0yMCAgQXl1bWkgS29qaW1hICA8
YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjgxMTAyPyk6
IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1sIGlzIGEgZmxha3kgdGltZW91
dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0MzdhNWUxNDdkN2RkYTQwZDFi
ZTliY2M3MTA5YTI2ODA1YWUyYWMuLjJhMTdhMmIxNGRlOThjNjAyOTA1YTNjNTMxOTVmMzhjNTI3
NDU5NmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisy
MDIxLTA5LTIxICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFk
ZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVs
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5k
b3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3Mt
aGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNv
bT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2VhOWU0N2MuLmU0YjNkY2E0MjU1
ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjAw
LDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9zLyBbIFNraXAgXQogaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBTa2lwIF0KIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lwIF0KIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFNraXAgXQorc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2YWN5LXJlcG9ydCB0ZXN0cyBy
ZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAtcHJpdmFjeS1yZXBvcnQvIFsg
U2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0YmI0MDA5Ni4uMWI0ZGM4YjZk
YTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVl
LW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsyLDUgQEAKIFBBU1Mgc2hvd0Rp
cmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgog
UEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUgdW5kZWZpbmVkIGZvciBkYXRh
IFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIGlmcmFtZS4g
YXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6
IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9O
OiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBz
aG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdp
bmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVK
RUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVj
dG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitGQUlMIG5hdmlnYXRvci5zdG9y
YWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3Qg
aW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNo
b3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRl
eGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0YjdiZTRkY2RhYWQ0YWI5MzA3
OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1NGY4MmYzNmVhMTMzN2UwYjAy
YTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5k
ZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDcg
KzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBw
ZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9u
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGVzIGFu
ZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRl
eGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBwZW5kaW5nIHRy
YW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRs
ZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxvYnMgaW4gSW5kZXhl
ZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJ
bmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVmY2M4ZDZiMjE5MzQzMmJhMGNj
ZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBiYTJjYjhkMzM1YzYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEw
IEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBkaXJlY3RvcnkgaGFuZGxlcyBy
ZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFu
ZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJldHVybnMg
dHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUg
c2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVu
dHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2Ft
ZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRp
Y2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJu
cyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZv
ciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxlIGhhbmRs
ZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1l
RW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0
aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJl
dHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRy
eSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBl
M2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0Li4zOTVlY2E1NTRiZGQ3Yjhh
YjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2Vy
dmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJh
bWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMwZmI2Y2IyNjViODQzYjJiMGNl
ZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGExMmRlYTZjNDgyODgxNSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5k
IG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2Vz
IHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRh
IFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwg
dG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYSB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBv
cmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8g
c2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBv
cnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwg
dG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBp
biBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNl
bmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5MGUyM2M0OTFmNTg4ZDFiNWI2
ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1Y2UxMTFkOWZjMmY3MDZhMGJi
YzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3Nh
Z2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBz
YW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZy
YW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3Jp
Z2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4
IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3YjUuLmE5Mzg0N2QwMDM1YjNi
ZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA0NTEwNjVlMzIyZGFm
ZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdmNGFmZmExOWMzODhlZTFjYzhk
MDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEs
NSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3Nh
Z2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGVkaWNh
dGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2VydmljZSB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1ZDkzZWU1NzIxNTc5YmI5ZWZj
NTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3NDZkNGNlYjI5NGQ2NzBhN2Q1
YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5k
Ym94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2lu
ZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYwOTU5OTU4OTYzZjJmNGQ2YTk3
ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3ODFlZmM5N2IxZDBmZGM4ZmIx
ZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1w
b3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
YmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdv
cmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3MmZmM2Y1NzQxMmRkMDhlYzZh
NGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkwNGZkNjdiOTkxMWY3MDcwNmFk
OWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBz
ZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNhMGY5NDcxMGM4ZTNlMDVmOTVh
MDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNkMjZmMzkxN2UwNzY4NDBlNzFj
ZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJl
bW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDkg
QEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNo
b3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgp
IHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGRpcmVjdG9yeSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBv
biBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hv
dWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUgb3B0
aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZSgpIHRvIHJl
bW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBv
biBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJl
bW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3RvcnkgcmVj
dXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhlIHJlY3Vy
c2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5k
bGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1ODgyMzAuLjc4MTcxZmYwZTQ4
NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsx
LDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBm
b3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0
eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
Y3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRo
IGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZh
bHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3Jl
YXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZv
ciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkg
cmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aGVuIGEgZmlsZSBh
bHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBu
YW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxl
KCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRE
aXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0
aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhh
bmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0ZGM3MzkxYjA4M2ZkMDRhYmI4
MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2ExYzg2ZmE2N2E2ZmQ0Y2U4N2Y1
NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4g
ZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0
aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVI
YW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3Jl
YXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNh
bWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFu
ZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRo
IGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
Z2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxl
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRl
PXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhv
dXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUg
c2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRs
ZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNl
cGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Ig
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlv
bi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYxYzExMmRiOTlhNjk2YzAzZmI0
YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4MTIyOWQ3MmVlMDMwNmE0YzUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBk
b2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEBAYXN5
bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlv
biB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpdGVyYXRpb24g
d2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9l
c24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEBAYXN5bmNJdGVy
YXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdh
cmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggYWM2ZmMx
OTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgxNDcyMjViZGE4NDkyOGRjMzI2
NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKLUZBSUwgcmVtb3ZlRW50
cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB0byBy
ZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24g
YSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBlbXB0
eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5
KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkg
cmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1lbXB0eSBkaXJl
Y3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1v
dmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1
Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBiMWIzMzQwLi5mNWU2NTFiMWVm
MWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFJlc29sdmUg
cmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBw
YXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3QgYSBjaGls
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBSZXNvbHZlIHJldHVybnMg
ZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24tYXNj
aWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUg
cmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVI
YW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRl
bnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRw
cy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAzMzAxMGQ3MTg0NTIyYmIzNzA1
ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5MjNjNDQzOTdmNjQxYzY1ZGNh
ZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUt
Y3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2
ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmls
ZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMu
dGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgQXR0
ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxl
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEwNGYxNWM3YWZhZGExYzE5N2E2
YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2MWE1NzggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdl
dEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAotRkFJTCBnZXRG
aWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRp
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgZ2V0RmlsZSgpIHByb3Zp
ZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVkIHRpbWUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1OWU2ZGJlMGIwYzhlMmM2MGJh
Li5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZmZWUwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVG
aWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAK
IAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhbiBBcnJheUJ1ZmZlciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0
aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBp
cGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21tYW5kIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0g
b2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBh
IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0
byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Y2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBjb21t
YW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdp
dGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdlbGwgd2l0aCBmZXRjaCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1MTU3YTVkYWNlZmMxMzVmYzA2
NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4NzlhNTRiNjY2NDhlOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdy
aXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDMxICsx
LDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIHN0cmluZyB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8g
b2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2Fs
bGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIHN0cmluZyBh
cHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3Jp
dGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBzdHJpbmcgYW5k
IGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBi
ZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQg
dXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRo
IHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1w
dHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdp
dGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJl
Y3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBh
dG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFrZSBhdG9taWMgY2hhbmdlcyBv
biBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZh
aWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6
IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkg
c3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3Jp
dGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBldmVuIGlm
IGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRh
dGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3JpdGVQYXJh
bXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB3
cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3
aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3Np
dGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBz
dHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQg
YmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBz
dHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBz
dHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHdpbmRvd3MgbGluZSBl
bmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdHlwZWQgYXJyYXkg
YnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczog
Y2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
YXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVy
YXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9t
aWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxlIG9uIGNsb3NlLCBl
dmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0ZSBtaXNzaW5nIGRhdGEgcGFy
YW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogc2VlayBt
aXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNob3VsZCByZWpl
Y3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2JkNjRjODQxOTU1OTI0NTIxMmYy
ZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2YwZGEzODk0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxl
U3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCB0
cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdy
aXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3aGVuIHBhcmVudCBk
aXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3JpdGFi
bGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGlu
Z0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3
aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjb21tYW5kcyBhcmUgcXVl
dWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKCkgZmFp
bHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1v
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNhdGUoKSBmYWlscyB3
aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6IGF0b21p
YyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250ZW50cyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhp
c3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6
ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vy
c29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwgc3Ry
ZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2ZjZTQ2Li5kOGRjZWJlNDg3MTAy
MzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1bGxzY3JlZW4vZnVsbC1zY3Jl
ZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMyMTMwOWJhZmYwNWU5NDk0MTFi
ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAK
K1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgcm9vdEhh
bmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBpcyAiZGlyZWN0b3J5IgorUEFT
UyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5kbGUua2luZCBpcyAiZGlyZWN0
b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBmaWxlSGFuZGxlLm5hbWUgaXMg
ImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIKK1BBU1MgaGFuZGxlTmFtZXMu
bGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRpciIKK1BBU1MgaGFuZGxlTmFt
ZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3RyaW5nKCkgaXMgIk5vdEZvdW5k
RXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRt
bCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxl
LWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4NTE0ZjQzNzYzNGVmZDRlMzBh
OGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApAQCAtMCwwICsxLDEwMCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rl
c2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFuZGxlLCBkaXJIYW5kbGUsIGZp
bGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3JlYXRlRXJyb3I7CisKK2Z1bmN0
aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9yKSB7CisgICAgICAgIHRlc3RG
YWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKworZnVuY3Rpb24g
Z2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpLnRo
ZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0gaGFuZGxlOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIsICIiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAg
ICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJy
b3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0
aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7CisgICAgZnJvbUhhbmRsZS5n
ZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0cnVlIH0pLnRoZW4oKGhhbmRs
ZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5Iik7CisgICAgICAgIGNoZWNr
SWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9u
IGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sKKyAgICBoYW5kbGUxLmlzU2Ft
ZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICBpc1NhbWVFbnRyeSA9
IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1lRW50cnkiKTsKKyAgICAgICAg
Y3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24g
Y3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsKKyAgICBsZXQgb3B0aW9ucyA9
IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxlLmdldEZpbGVIYW5kbGUoImZp
bGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgZmlsZUhhbmRsZSA9IGhh
bmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLm5hbWUiLCAi
ZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUua2luZCIs
ICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9
PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGNyZWF0ZUVycm9yID0g
ZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiY3JlYXRlRXJyb3IudG9TdHJp
bmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4i
KTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZXNvbHZl
UGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhhbmRsZSkudGhlbigocmVzdWx0
KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZSgi
aGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJlbW92ZUVudHJ5KGRpckhhbmRs
ZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVz
dChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92ZUVudHJ5KGZyb21IYW5kbGUs
IG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5hbWUpLnRoZW4oKHJlc3VsdCkg
PT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyByZW1vdmVkLgorICAgICAgICBj
cmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgZ2V0RGlyZWN0
b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRvdy50ZXN0UnVubmVyIGlzIG5v
dCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438918</attachid>
            <date>2021-09-21 21:47:45 -0700</date>
            <delta_ts>2021-09-22 09:43:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210921214744.patch</filename>
            <type>text/plain</type>
            <size>187774</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uZTI5M2M5ODQ3MTMwOWI5Y2Y0ZGRiOGNiOTBhZGE3
MjUyNWYzMmE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDIxLTA5LTIxICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCisKKyAgICAgICAgKiBIZWFkZXJzLmNtYWtlOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUpOgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmg6CisgICAgICAgIChp
c1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZTo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVt
RmlsZUhhbmRsZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmg6CisgICAgICAgIChpc1R5cGUpOgorICAgICAgICAqIE1vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1IYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkpOiBEZWxldGVkLgorICAgICAgICAqIE1vZHVsZXMv
ZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmg6CisgICAgICAgIChXZWJDb3JlOjpG
aWxlU3lzdGVtSGFuZGxlOjppbXBsIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw6On5GaWxlU3lzdGVtSGFuZGxlSW1wbCk6CisgICAgICAg
ICogTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmg6CisgICAgICAgICogTW9k
dWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9zdG9y
YWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2Vy
Ojpjb25uZWN0aW9uSW5mbyk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVy
c2lzdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0
b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAg
ICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjp0b0pTKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
SlNOZXdseUNyZWF0ZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlw
dExvYWRlci5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmg6
CisKIDIwMjEtMDktMjAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0NvY29hXSBNYWtlIEFWU2FtcGxlQnVmZmVyVmlkZW9PdXRwdXQgc3VwcG9ydCBhbiBFeHBl
cmltZW50YWwgRmVhdHVyZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBiMWI5ZGViNmI1YTVhZDFmOTIzMmVlNTBhNTNk
Nzc0MDcxZjU1NDdiLi5iYmQwOGUxOWM4OGQ5Mjc3MWY4MGEwYmExNzg3MTUyN2ZmMWVkZTE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwpAQCAtMSwzICsxLDg4IEBACisyMDIxLTA5LTIxICBTaWh1aSBMaXUgIDxzaWh1aV9s
aXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lz
dGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEludHJvZHVjZSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgdG8gbWFuYWdlIGZpbGUg
aGFuZGxlcy4gRWFjaCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSBjb3JyZXNwb25kcyB0byBhIAor
ICAgICAgICBGaWxlU3lzdGVtSGFuZGxlIGluIHdlYiBwcm9jZXNzLgorCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UHJvY2Vzczo6cmVtb3ZlU3RvcmFnZU1hbmFnZXJGb3JTZXNzaW9uKToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaDogQWRkZWQuCisgICAg
ICAgIChXZWJLaXQ6OmNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmlzU2FtZUVu
dHJ5KToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RD
cmVhdGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6cGF0aCBjb25zdCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaDogQWRkZWQuCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6dW5yZWdpc3RlckhhbmRsZSk6CisgICAgICAgIChXZWJL
aXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OmdldEhhbmRsZSk6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5
Lmg6IEFkZGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjp+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAg
ICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQp
OgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9y
eSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6fk5ldHdvcmtTdG9yYWdlTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xvc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnN0YXJ0UmVjZWl2aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5nTWVzc2FnZUZy
b21Db25uZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6cmVzb2x2ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6Y2xlYXJTdG9yYWdlRm9yVGVzdGluZyk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpzZXNzaW9uSUQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6Y29u
bmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpT
dG9yYWdlQnVja2V0Ojp0eXBlU3RvcmFnZVBhdGggY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldDo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25D
bG9zZWQpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1
Y2tldCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KToK
KyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdl
TWFuYWdlci5oOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAg
ICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6CisgICAgICAgICogU291
cmNlcy50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OmNyZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkpOgorICAgICAgICAoV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1lRW50cnkpOgor
ICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0
RGlyZWN0b3J5SGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVByb3h5OjpyZXNvbHZlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDogQWRkZWQuCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpnZXRQZXJzaXN0ZWQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdCk6CisgICAgICAgIChXZWJLaXQ6
OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KToKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3RlZCk6IERlbGV0ZWQuCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oOgor
CiAyMDIxLTA5LTE5ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAg
ICAgICAgIFRlYWNoIGBXZWJLaXQ6OmNyZWF0ZVNoYXJlYWJsZUJpdG1hcGAgdG8gc25hcHNob3Qg
dmlkZW8gZWxlbWVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2Ug
Yi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCmluZGV4IGY0MTEzMzRkNmI3MTQ3MzcwNTcw
NmNlMDVmNGRjNjEwNDg3Y2E3N2UuLjU1YzUwMmQ1YjA5N2MzNDIyMjk1YThlMmZkN2Y1NjgzYjU3
ZWQwNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtNDAsNiArNDAsNyBAQCBzZXQoV2ViQ29yZV9Q
UklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9G
aWxlU3lzdGVtRmlsZUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuaAorICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFu
ZGxlSW1wbC5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL1N0b3JhZ2VNYW5hZ2VyRmls
ZVN5c3RlbUFjY2Vzcy5oCiAKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAppbmRleCBkOTVkNjkyNDNm
NTA0MDlkZTMyNmZhYTlhY2ZlMDBjYTFmNmRhMmUxLi5kYmIwOGFkNWM2Zjg5ZTZhNjEzY2VlZjUz
ZWM2Mjk5NmJhYTQwNGFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwCkBAIC0yNiw0MSArMjYsNjQgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtSGFuZGxl
SW1wbC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCisjaW5jbHVkZSAiSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRmlsZUhh
bmRsZS5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZT4gRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVt
SGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShuYW1lKSkK
K0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCisgICAgOiBGaWxl
U3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShu
YW1lKSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlOjpnZXRGaWxlSGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0
aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RmlsZU9wdGlvbnM+IG9wdGlvbnMs
IERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYm
IHByb21pc2UpCiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVk
RXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2Fy
eSA9IG9wdGlvbnMgPyBvcHRpb25zLT5jcmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0Rmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZN
b3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQu
aGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0
LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5y
ZWxlYXNlUmV0dXJuVmFsdWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9u
YWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYg
cHJvbWlzZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFu
ZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETElu
dGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVu
dGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9u
cy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdldERpcmVjdG9yeUhhbmRsZShXVEZNb3Zl
KG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShh
dXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkp
CisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRp
b24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFs
dWUoKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVt
b3ZlRW50cnkoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlOjpSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlz
ZSkKK3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoU3RyaW5nJiYg
bmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1vdmVPcHRp
b25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQogewotICAg
IHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxl
bWVudGVkIl9zIH0pOworICAgIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkgPSBvcHRpb25zID8gb3B0
aW9ucy0+cmVjdXJzaXZlIDogZmFsc2U7CisgICAgaW1wbCgpLnJlbW92ZUVudHJ5KFdURk1vdmUo
bmFtZSksIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1
dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShyZXN1
bHQpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZXNv
bHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURlZmVycmVk
PElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJvbWlzZSkKIHsKLSAgICBwcm9taXNlLnJl
amVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9
KTsKKyAgICBpbXBsKCkucmVzb2x2ZShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUo
cHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNF
eGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVs
ZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0LnJlbGVh
c2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKaW5kZXggNGFmMWQ5ZGI3MjQyODQ5
MjQ3NDI5MWFkZWQ0OGM5NDdmNDM0NTAyYi4uN2M0N2U3NTVlYzBhOTZkMGJmMjU5ZWU1NDNjMjVl
NDZmYWYxMDQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCkBAIC0z
MSw3ICszMSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRmlsZVN5c3RlbUZpbGVI
YW5kbGU7CiAKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIGZpbmFsIDogcHVi
bGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZSk7CiBwdWJsaWM6CiAgICAgc3RydWN0IEdldEZpbGVPcHRpb25z
IHsKQEAgLTQ2LDE0ICs0NiwxOCBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgcmVjdXJzaXZlIHsg
ZmFsc2UgfTsKICAgICB9OwogCi0gICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPiBjcmVhdGUoU3RyaW5nJiYpOwotICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShjb25zdCBTdHJp
bmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RmlsZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJy
ZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik7Ci0gICAgdm9pZCBnZXRE
aXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldERpcmVj
dG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU+PiYmKTsKLSAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYg
bmFtZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZv
aWQ+JiYpOwotICAgIHZvaWQgcmVzb2x2ZShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJv
bWlzZURlZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOworICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0cmlu
ZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOworICAgIHZvaWQgZ2V0RmlsZUhhbmRs
ZShTdHJpbmcmJiBuYW1lLCBzdGQ6Om9wdGlvbmFsPEdldEZpbGVPcHRpb25zPiwgRE9NUHJvbWlz
ZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpOworICAgIHZv
aWQgZ2V0RGlyZWN0b3J5SGFuZGxlKFN0cmluZyYmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGly
ZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4+JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoU3RyaW5nJiYgbmFt
ZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+
JiYpOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVy
cmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYpOwogCiBwcml2YXRlOgotICAgIGV4cGxp
Y2l0IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVH
SU4oV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSkKKyAgICBzdGF0aWMgYm9vbCBp
c1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKSB7IHJldHVybiBo
YW5kbGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9y
eTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKaW5kZXggOWVkYzIwNGUxN2VlMTMzNGYzMDc3MGUyYmE3NDUwNTlkYTU4NzBhMi4u
ZjE1ZTAxMWQ2ZjYzZTU3MDM5YzZlOTQ2MjdlYTI1YWQwOWYwZTEyMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUZpbGVIYW5kbGUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKICNpbmNs
dWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgogCkBAIC0zMywxMyArMzQsMTMgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbUZp
bGVIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFu
ZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmls
ZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhh
bmRsZUltcGw+JiYgaW1wbCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVt
RmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkpOwogfQogCi1G
aWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYgbmFtZSkK
LSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RG
TW92ZShuYW1lKSkKK0ZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShT
dHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZp
bGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZSwgV1RGTW92ZShuYW1l
KSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAppbmRl
eCAwYTdmYTRlMzhiOGE1MDQ4MGYzZTMyMjc5ZGMzOTkxYzA0ZTNjYjkxLi40ODI5YmIyNDE3Nzlj
NzU0ZWE3YTU4N2FlNmQxYTFlOTI3MmRkMzEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aApAQCAtMzQsMTEgKzM0LDE1IEBAIGNsYXNzIEZpbGU7CiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhh
bmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxlIHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVm
PEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYpOworICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVm
PEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKICAgICB2b2lkIGdldEZpbGUoRE9NUHJvbWlzZURl
ZmVycmVkPElETEludGVyZmFjZTxGaWxlPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQg
RmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYpOworICAgIEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5kKCkgPT0gV2Vi
Q29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RmlsZTsgfQorU1BFQ0lBTElaRV9UWVBFX1RS
QUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwCmluZGV4IDIxMjFiMWNjMjUxNTE4YmI5
NWRmMDY5NDExYzIxMTJiNjA4NTBmYmYuLjRhZjYxMTA4YjE3MWYyNjdhNDkyZmI2ZTU1MDIwNDZh
NjJjZDE0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKQEAgLTMzLDE1ICszMywyMyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lz
dGVtSGFuZGxlKTsKIAotRmlsZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lz
dGVtSGFuZGxlOjpLaW5kIGtpbmQsIFN0cmluZyYmIG5hbWUpCitGaWxlU3lzdGVtSGFuZGxlOjpG
aWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6OktpbmQga2luZCwgU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiAgICAgOiBtX2tpbmQoa2luZCkK
ICAgICAsIG1fbmFtZShXVEZNb3ZlKG5hbWUpKQorICAgICwgbV9pbXBsKFdURk1vdmUoaW1wbCkp
CiB7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCitG
aWxlU3lzdGVtSGFuZGxlOjp+RmlsZVN5c3RlbUhhbmRsZSgpID0gZGVmYXVsdDsKKwordm9pZCBG
aWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUsIERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpIGNvbnN0CiB7Ci0gICAgcHJv
bWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50
ZWQiX3MgfSk7CisgICAgaWYgKG1fa2luZCAhPSBoYW5kbGUua2luZCgpIHx8IG1fbmFtZSAhPSBo
YW5kbGUubmFtZSgpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZXNvbHZlKGZhbHNlKTsKKwor
ICAgIG1faW1wbC0+aXNTYW1lRW50cnkoaGFuZGxlLmltcGwoKSwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2Uuc2V0dGxl
KFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxl
U3lzdGVtSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZS5oCmluZGV4IDc1NGU0OTQxOWJiNjM3ZjE3ZjA3ZmQ4MDMxOTlmMjIx
ODI3Njk5N2EuLmU1Y2Y3MDIzYTY5NTlkNjhkMzk1NDFmMDY3MDc2ZWQ3M2JmNmZlYTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1IYW5kbGUuaApAQCAtMzEsMjkgKzMxLDMyIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBET01Qcm9taXNlRGVmZXJyZWQ7CisKK2NsYXNz
IEZpbGVTeXN0ZW1IYW5kbGVJbXBsOwogZW51bSBjbGFzcyBQZXJtaXNzaW9uU3RhdGUgOiB1aW50
OF90OwogCiBjbGFzcyBGaWxlU3lzdGVtSGFuZGxlIDogcHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5
c3RlbUhhbmRsZT4gewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbUhhbmRs
ZSk7CiBwdWJsaWM6CisgICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZSgpOworCiAgICAgZW51
bSBjbGFzcyBLaW5kIDogdWludDhfdCB7CiAgICAgICAgIEZpbGUsCiAgICAgICAgIERpcmVjdG9y
eQogICAgIH07Ci0KLSAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0Owot
CiAgICAgS2luZCBraW5kKCkgY29uc3QgeyByZXR1cm4gbV9raW5kOyB9CiAgICAgY29uc3QgU3Ry
aW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9CisgICAgRmlsZVN5c3RlbUhhbmRs
ZUltcGwmIGltcGwoKSBjb25zdCB7IHJldHVybiBtX2ltcGwuZ2V0KCk7IH0KIAotICAgIHZvaWQg
aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExCb29sZWFuPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmLCBE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJikgY29uc3Q7CiAKIHByb3RlY3RlZDoKLSAg
ICBGaWxlU3lzdGVtSGFuZGxlKEtpbmQsIFN0cmluZyYmIG5hbWUpOworICAgIEZpbGVTeXN0ZW1I
YW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsK
IAogcHJpdmF0ZToKICAgICBLaW5kIG1fa2luZCB7IEtpbmQ6OkZpbGUgfTsKICAgICBTdHJpbmcg
bV9uYW1lOworICAgIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4gbV9pbXBsOwogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCmluZGV4IDIwOGU3NDVj
YzNiZmM0Yzc5NzZlYzAyOGUxYjRkZDYyYWFmZDAzMDguLjliZDAxMDAxMWJmM2M1Yzg3N2RlNjgz
ZDZhYTgxNmRiZWFhMTBmYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKQEAgLTI5LDYgKzI5
LDcgQEAgZW51bSBGaWxlU3lzdGVtSGFuZGxlS2luZCB7CiB9OwogCiBbCisgICAgQ3VzdG9tVG9K
U09iamVjdCwKICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKSwKICAgICBFbmFibGVkQnlTZXR0
aW5nPUZpbGVTeXN0ZW1BY2Nlc3MsCiAgICAgU2VjdXJlQ29udGV4dApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBs
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZUltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNmFiNmU1YzYwZGZkZWFiMTQxYTQyNDFjMGE1N2FmYjky
ZmZmNjg3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNz
IEV4Y2VwdGlvbk9yOworCitjbGFzcyBGaWxlU3lzdGVtSGFuZGxlSW1wbCA6IHB1YmxpYyBSZWZD
b3VudGVkPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+Rmls
ZVN5c3RlbUhhbmRsZUltcGwoKSB7IH0KKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IHN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpc1Nh
bWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8Ym9vbD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RmlsZUhhbmRs
ZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik+JiYp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNl
cHRpb25PcjxSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSA9IDA7CisgICAg
dmlydHVhbCB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNp
dmUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEw
YzhiMzFmOTRiNjZhZjA4Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3
MzY3MDRjYjIyNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9EdW1teVN0b3JhZ2VQcm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7
CiAgICAgICAgIH0KIAotICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAg
dm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAg
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJz
aXN0KENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQorICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAg
ICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisK
KyAgICAgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7Cisg
ICAgICAgIH0KICAgICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0
aW9uKCkgZmluYWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9T
dG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3Jh
Z2VDb25uZWN0aW9uLmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3
NTUzMy4uMGE0MDA3M2I0ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAg
LTI1LDE4ICsyNSwyMiBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBs
YXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsK
IAogY2xhc3MgU3RvcmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29u
bmVjdGlvbj4gewogcHVibGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBk
ZWZhdWx0OwotICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lz
dChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0
KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRP
cmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIu
Y3BwCmluZGV4IGZiNTRmOTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLjZkM2I0
MGUwMGZhMmQxZDdlNGZiMGE5NzNmYzE1MTU0YTU1YmZhNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAg
QEAKICNpbmNsdWRlICJTdG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2lu
LmgiCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRl
ICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNl
LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9j
SW5saW5lcy5oPgpAQCAtNDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFu
YWdlcihOYXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQor
c3RydWN0IFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2Vw
dGlvbk9yPFN0b3JhZ2VNYW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNv
bm5lY3Rpb25JbmZvKCkKIHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4g
cHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3Ig
ZG9lcyBub3QgZXhpc3QiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBj
b250ZXh0ID0gbV9uYXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAo
IWNvbnRleHQpCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJl
dHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJf
cyB9OwogCisgICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAg
ICBpZiAoIW9yaWdpbikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAK
LSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICgh
b3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVj
dGlvbkluZm8geyAqY29ubmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9y
aWdpbi0+ZGF0YSgpIH0gfTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERP
TVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIHJldHVybiBjb25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4o
KS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
Ym9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIHJldHVybiBj
b25uZWN0aW9uSW5mby5jb25uZWN0aW9uLmdldFBlcnNpc3RlZChjb25uZWN0aW9uSW5mby5vcmln
aW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUg
ewogICAgICAgICBwcm9taXNlLnJlc29sdmUocGVyc2lzdGVkKTsKICAgICB9KTsKIH0KIAogdm9p
ZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4m
JiBwcm9taXNlKQogewotICAgIGlmICghbV9uYXZpZ2F0b3IpCi0gICAgICAgIHJldHVybiBwcm9t
aXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5hdmlnYXRvciBkb2Vz
IG5vdCBleGlzdCJfcyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBj
b25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4
Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9P
ckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkpOwogCi0gICAgYXV0byBjb250ZXh0ID0gbV9u
YXZpZ2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSAgICBpZiAoIWNvbnRleHQpCi0g
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJv
ciwgIlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7Ci0KLSAgICBhdXRvIGNvbm5lY3Rpb24g
PSBjb250ZXh0LT5zdG9yYWdlQ29ubmVjdGlvbigpOwotICAgIGlmICghY29ubmVjdGlvbikKLSAg
ICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiVGhlIGNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIGF1dG8qIG9yaWdpbiA9
IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7Ci0gICAgaWYgKCFvcmlnaW4pCi0gICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk9yaWdp
biBpcyBpbnZhbGlkIl9zIH0pOwotCi0gICAgcmV0dXJuIGNvbm5lY3Rpb24tPnBlcnNpc3QoeyBj
b250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0sIFtwcm9taXNlID0g
V1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQpIG11dGFibGUgeworICAgIGF1dG8gY29u
bmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1
ZSgpOworICAgIHJldHVybiBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLnBlcnNpc3QoY29ubmVj
dGlvbkluZm8ub3JpZ2luLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGJvb2wgcGVyc2lz
dGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKHBlcnNpc3RlZCk7CiAgICAg
fSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24g
eyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBhdXRvIGNv
bm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5mbygpOworICAgIGlmIChjb25u
ZWN0aW9uSW5mb09yRXhjZXB0aW9uLmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcHJv
bWlzZS5yZWplY3QoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlRXhjZXB0aW9uKCkp
OworCisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24u
cmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9uSW5mby5vcmlnaW4sIFtwcm9taXNl
ID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAo
cmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0
KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShy
ZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3Rv
cmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4MDU4ODU3OGZkYzdiN2YxYTguLmQ3
MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCkBAIC0zMSw5ICszMSwxMCBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIERPTVBy
b21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit0ZW1wbGF0
ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyIDog
cHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsKICAgICBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2LDggQEAgcHVibGljOgogCiBwcml2
YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5hdmlnYXRvckJhc2UmKTsKLQorICAg
IHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRpb25PcjxDb25uZWN0aW9uSW5mbz4g
Y29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmlnYXRvckJhc2U+IG1fbmF2aWdhdG9y
OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUy
NTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAyN2QzYWRjMDU1YTllM2FmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRpbmdzL2pzL0pTRXhlY1N0YXRlLmNw
cAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRW50
cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCiBi
aW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNI
VE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTENvbGxlY3Rpb25D
dXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZmNWM4ZmZjNWJhYTUzYzk2MTAzYS4u
NjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEwZTI5ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgxOCw2ICsy
ODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzk4
MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMwQUFDOUYyNTBFRDQwOTAwMTNEQTlG
IC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9u
UnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGlu
Z1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oICovOyB9OworCQk5
MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzU4MjZGMUI0NEYw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRBMTQxODFGN0EwMEZDRjVCRSAvKiBt
aXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBu
ZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29y
bmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLzsg
fTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkUxMTQxOTVB
NTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9OwpAQCAtMjg3MCw5ICsyODcxLDkg
QEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRleHRDb2RlY1VURjguaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDNDQjgwMTJGMjVFNTEw
MDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJCTkzNDQyQzlFMEQyQjMzNUMwMDMz
OEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxU
YWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQzRTg1MjZFOTk1QkIwMDU4NTM4RiAv
KiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9y
YWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsKLQkJOTM0NDNFODYyNkU5OTVCRDAw
NTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg3MjZFOTk1QzAwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0
ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxl
U3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyB9
OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlC
RDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzQ0M0U4NzI2RTk5
NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFu
ZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJD
OUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNDkwN0U0MTI1QkJCQzgwMDdG
MjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29u
dGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4
MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsgfTsKIAkJOTM0OTUwQ0UyNTM5NDM2
NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDk1MEJDMjUzOTQzNEUwMDk5RjE3
MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmggKi87IH07CkBAIC0xMTY5NSw2ICsx
MTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1wbGVSYW5nZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFu
Z2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2ltcGxlUmFuZ2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQw
QUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBC
b3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU4MjZG
MUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFu
ZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmlsZVN5c3RlbUhhbmRsZUN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMUFFM0I4MUZCODBFQUUwMEY1
RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmFsdWVJ
bldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQkNDNjAx
MTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0
YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxp
bmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjMwMzYsNiAr
MjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0
Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVu
dEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5
c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3RTUgLyog
SlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJCQk4NEJCRTU0ODI1OTdFN0YxMDBB
QThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCiAJCQkJNkU1NzZCQzMy
NEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJ
CUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAq
LywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJDOUJEMDI2REQ2MjU1MDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RC
IC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIg
LyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMxQTA3NTgyNkYxQjQ0RjAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJOTM0NDNFN0IyNkU4QTZCQzAwNTg1
MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nlc3MuaWRsICovLAogCQkJCTkzNDQz
RTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAq
LywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJCQkJODNGQjMzNzUxRjUwOEE1QjAw
OTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNDQz
RTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEwMEZEREY1RiAvKiBGaWxlU3lzdGVt
SGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI2OUYwRTgxREFFQjAwQjI1OTY1
IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzEyQkU0ODMxRkU4NjVERDAwMjAz
MUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NDVFNzJGODBGRDI2MUVFMDBB
ODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2NTc4ZGUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20u
Y3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCIKKyNpbmNs
dWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNh
bEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRmlsZVN5c3Rl
bUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFwKGxleGljYWxHbG9iYWxPYmplY3Qs
IGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpKU1ZhbHVlIHRvSlNOZXdseUNyZWF0
ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sKKyAgICBpZiAoaXM8RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVdy
YXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGhh
bmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbUZpbGVIYW5kbGU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30KKworfQorCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCmluZGV4
IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBlMTk2YjYuLjg0NmUyMzg1MzEwODJj
YjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oCkBAIC0yNiw2ICsyNiw3IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNjcmlwdExvYWRlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlNjcmlwdEJ1ZmZlci5o
IgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIKICNpbmNsdWRlICJXb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQyMDU4MjBhYjAxMDljMWU1M2NjNmRl
YWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0MjhmY2E3NDg1NGY5NWVkNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaApA
QCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogCisjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25z
ZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGllbnQuaCIKICNpbmNsdWRlICJTZXJ2
aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjViMWIzZTc0NmM5NjkyOTI2NGJhZmRm
OGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1ZDVjMjE2MGQ3NmE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtNDYx
LDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFkZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vz
c2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0CiAKIHZvaWQgTmV0d29ya1Byb2Nl
c3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3ZlKHNlc3Npb25JRCk7CisgICAgaWYg
KGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRha2Uoc2Vzc2lvbklEKSkKKyAgICAg
ICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6Zm9yRWFjaE5l
dHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0d29ya1Nlc3Npb24mKT4mIGZ1bmN0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZGZmZTIyYTllOGRjYzVi
ODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApAQCAtMCww
ICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxXZWJDb3Jl
L0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51bVRyYWl0cy5oPgorCituYW1lc3Bh
Y2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUVycm9yIDogdWludDhf
dCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWROYW1lLAorICAgIEludmFsaWRNb2Rp
ZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVua25vd24KK307CisKK2lubGluZSBX
ZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVycm9yKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6CisgICAgICAgIHJldHVybiBXZWJDb3Jl
OjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4
Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gV2Vi
Q29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOworICAgIH0KK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVt
VHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4geworICAgIHVzaW5nIHZhbHVl
cyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvciwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUsCisgICAg
ICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbiwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gsCisg
ICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bgorICAgID47Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmVjZmI1Y2UyN2FiN2M1MzNhZmEyZDFiZTllZWY2NDE2YjgwOGY1YjIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgiCisK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJLaXQgeworCisjaWYgT1MoV0lORE9X
UykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnXFwnOworI2Vsc2UKK2NvbnN0ZXhw
ciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYKKworRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYg
bWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKQorICAgIDog
bV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcjo6Z2VuZXJhdGVU
aHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdlYWtQdHIobWFuYWdlcikpCisgICAg
LCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3ZlKHBhdGgpKQorICAgICwgbV9uYW1l
KFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3BhdGguaXNFbXB0eSgpKTsKKworICAg
IHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjptYWtlQWxsRGlyZWN0b3JpZXMobV9w
YXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKG1fcGF0aCkp
CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbTo6
b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Blbk1vZGU6OldyaXRlKTsKKyAgICAg
ICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7CisgICAgfQorfQorCit2b2lkIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRl
bnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIobV9wYXRoID09IHBh
dGgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXF1ZXN0Q3JlYXRlSGFu
ZGxlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgVHlwZSB0eXBlLCBTdHJpbmcmJiBuYW1l
LCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVk
PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChtX3R5cGUgIT0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaCkpOworCisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7
CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFs
aWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUgPT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1l
LmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE5hbWUpKTsK
KworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudCht
X3BhdGgsIG5hbWUpOworICAgIG1fbWFuYWdlci0+Y3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIHR5
cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGU6OmdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBu
YW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHJlcXVlc3RDcmVhdGVIYW5kbGUo
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUsIFdURk1vdmUo
bmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVs
ZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1f
dHlwZSAhPSBUeXBlOjpEaXJlY3RvcnkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgYXV0byBwYXRo
ID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFtZSk7Cisg
ICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYgKCF0eXBl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VHlwZU1pc21hdGNoKTsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBGaWxl
U3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpkZWxl
dGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxlVHlw
ZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAgICAg
ICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAgICAg
ICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247CisgICAg
ICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBhdGgp
KQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bjsK
KyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVj
dGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7Cisg
ICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
bWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAg
aWYgKCFwYXRoLnN0YXJ0c1dpdGgobV9wYXRoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5z
dWJzdHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN0UGF0
aC5zcGxpdChwYXRoU2VwYXJhdG9yKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ZTQyYzFlMGE1YTJhNmZiM2E3YjE3
NGM1ZmQxZDNmYmE5ZGVmM2E3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2
MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5o
IgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5j
bHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6
IHVpbnQ4X3Q7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1h
a2VXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxp
emF0aW9uOjpFYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgor
ICAgIGVudW0gY2xhc3MgVHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJp
bmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9Cisg
ICAgY29uc3QgU3RyaW5nJiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICB2
b2lkIGlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6
Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5
SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQg
cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmKTsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworCitwcml2YXRlOgorICAgIHZvaWQgcmVxdWVzdENy
ZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBUeXBlLCBTdHJpbmcmJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsK
KworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7Cisg
ICAgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBl
IG1fdHlwZTsKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVk
ZDNhMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVu
dGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXJUeXBlPjsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBh
N2Q5NTc1NmUyZmRkNTRhMDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNw
cApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2lu
Y2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7Cisg
ICAgQVNTRVJUKCFtX2hhbmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5k
bGVzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRs
ZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlm
aWVyKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnk6OmdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIg
aWRlbnRpZmllcikKK3sKKyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50
aWZpZXIpKQorICAgICAgICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxw
dHI7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2Nj
N2YwZjI4ODAyMzI1MDdiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCww
ICsxLDQ5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0
aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
Jik7CisgICAgdm9pZCB1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllcik7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlPj4gbV9oYW5kbGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmIyMDhhNDI0ZjVmZGYwMmQ2
Y2E4OTc5ZDIxMjE0OGI2Nzc5OTUxOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0w
LDAgKzEsMTA3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRo
KSkKKyAgICAsIG1fcmVnaXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBm
b3IgKGF1dG8gaWRlbnRpZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0
cnkudW5yZWdpc3RlckhhbmRsZShpZGVudGlmaWVyKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhw
ZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtu
b3duKSk7CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBh
dGgpOworICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpGaWxlTm90Rm91bmQpKTsKKworICAgIGlmIChmaWxlRXhpc3RzKSB7CisgICAgICAg
IGF1dG8gZXhpc3RpbmdGaWxlVHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBlKHBhdGgpOworICAg
ICAgICBpZiAoIWV4aXN0aW5nRmlsZVR5cGUpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikp
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVt
U3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRs
ZSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBXVEZN
b3ZlKHBhdGgpLCBXVEZNb3ZlKG5hbWUpKTsKKyAgICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIg
PSBuZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5z
dXJlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgWyZdIHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3It
PnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVyKTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVy
SGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpuZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5h
ZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92ZShuZXdIYW5kbGUpKTsKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihuZXdIYW5kbGVJZGVudGlmaWVyKTsKK30KKworY29uc3QgU3RyaW5nJiBGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZmluZChp
ZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxlcy5lbmQoKSA/IGVtcHR5
U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlv
bikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxl
cyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNvbm5lY3Rpb24udW5pcXVlSUQoKSk7Cisg
ICAgaWYgKGhhbmRsZXMgPT0gbV9oYW5kbGVzQnlDb25uZWN0aW9uLmVuZCgpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBmb3IgKGF1dG8gaGFuZGxlSWRlbnRpZmllciA6IGhhbmRsZXMtPnZhbHVl
KSB7CisgICAgICAgIGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLnRha2UoaGFuZGxlSWRlbnRpZmll
cik7CisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3RlckhhbmRsZShoYW5kbGVJZGVudGlmaWVy
KTsKKyAgICB9CisgICAgbV9oYW5kbGVzQnlDb25uZWN0aW9uLnJlbW92ZShoYW5kbGVzKTsKK30K
Kwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeShJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisK
KyAgICBjcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5
cGU6OkRpcmVjdG9yeSwgU3RyaW5nIHsgbV9wYXRoIH0sIHsgfSwgdHJ1ZSwgV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1h
bmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTlkNjYwMTFmMzUwNzk5YjIzMWI1ZjViYTY3
YTc4YWUzMWYzMzA5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCkBAIC0wLDAgKzEsNTQgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgi
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsK
K2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeSYpOworICAgIH5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoKTsKKworICAg
IHZvaWQgY3JlYXRlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICBjb25z
dCBTdHJpbmcmIGdldFBhdGgoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uJik7CisgICAgdm9pZCBnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3Rl
ZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I+KT4mJik7CisKK3ByaXZhdGU6CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiBtX3JlZ2lzdHJ5OworICAgIEhhc2hNYXA8SVBDOjpDb25u
ZWN0aW9uOjpVbmlxdWVJRCwgSGFzaFNldDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXI+PiBtX2hhbmRsZXNCeUNvbm5lY3Rpb247CisgICAgSGFzaE1hcDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZT4+IG1faGFuZGxlczsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyLmNwcAppbmRleCAzNjJhZmI4ODUyYWZmNDgwOTllMDljZjU1ZTdlYzY3MzVlNTMz
M2M3Li44MmEzM2JjODU4YTYxZGEwODg3YTA5MGU3MGU1ZjA5NjdiYTBlN2Q1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxwYWwvY3J5cHRvL0Ny
eXB0b0RpZ2VzdC5oPgpAQCAtNDUsNiArNDcsNyBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5l
dHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgog
ICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwYXRoID0gcGF0aC5pc29sYXRl
ZENvcHkoKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5ID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PigpOwog
ICAgICAgICBtX3BhdGggPSBwYXRoOwogICAgICAgICBpZiAoIW1fcGF0aC5pc0VtcHR5KCkpIHsK
ICAgICAgICAgICAgIGF1dG8gc2FsdFBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdD
b21wb25lbnQobV9wYXRoLCAic2FsdCIpOwpAQCAtNTMsMTggKzU2LDUyIEBAIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25J
RCwgY29uc3QgU3RyCiAgICAgfSk7CiB9CiAKK05ldHdvcmtTdG9yYWdlTWFuYWdlcjo6fk5ldHdv
cmtTdG9yYWdlTWFuYWdlcigpCit7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICBBU1NFUlQobV9jbG9zZWQpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Y2xv
c2UoKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBpZiAobV9jbG9z
ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byYgY29ubmVjdGlvbiA6IG1fY29u
bmVjdGlvbnMpCisgICAgICAgIGNvbm5lY3Rpb24ucmVtb3ZlV29ya1F1ZXVlTWVzc2FnZVJlY2Vp
dmVyKE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSk7CisKKyAgICBtX2Nsb3NlZCA9IHRydWU7CisgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9XSgpIG11dGFibGUgeworICAgICAgICBtX2Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkgPSBudWxscHRyOworICAgICAgICBtX2xvY2Fs
T3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CisgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0
b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOworCisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRj
aChbcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyldIHsgfSk7CisgICAgfSk7
Cit9CisKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdGFydFJlY2VpdmluZ01lc3NhZ2VG
cm9tQ29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJU
KFJ1bkxvb3A6OmlzTWFpbigpKTsKIAogICAgIGNvbm5lY3Rpb24uYWRkV29ya1F1ZXVlTWVzc2Fn
ZVJlY2VpdmVyKE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Om1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSwgbV9xdWV1ZS5nZXQoKSwgdGhpcyk7CisgICAgbV9jb25uZWN0aW9ucy5hZGQoY29u
bmVjdGlvbik7CiB9CiAKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpzdG9wUmVjZWl2aW5n
TWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKIHsKICAg
ICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworICAgIAorICAgIGlmICghbV9jb25uZWN0aW9u
cy5yZW1vdmUoY29ubmVjdGlvbikpCisgICAgICAgIHJldHVybjsKIAogICAgIGNvbm5lY3Rpb24u
cmVtb3ZlV29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSk7CisgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3Ro
aXMsIHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9LCBwcm90ZWN0ZWRDb25uZWN0aW9uID0g
UmVmIHsgY29ubmVjdGlvbiB9XSgpIHsKKyAgICAgICAgZm9yIChhdXRvJiBvcmlnaW5TdG9yYWdl
TWFuYWdlciA6IG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMudmFsdWVzKCkpCisgICAgICAg
ICAgICBvcmlnaW5TdG9yYWdlTWFuYWdlci0+Y29ubmVjdGlvbkNsb3NlZChwcm90ZWN0ZWRDb25u
ZWN0aW9uLmdldCgpKTsKKyAgICB9KTsKIH0KIAogc3RhdGljIFN0cmluZyBlbmNvZGUoY29uc3Qg
U3RyaW5nJiBzdHJpbmcsIEZpbGVTeXN0ZW06OlNhbHQgc2FsdCkKQEAgLTExMSw5ICsxNDgsNzIg
QEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xp
ZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXQKICAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsK
IH0KIAordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3Rvcnko
SVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4m
IG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGxvY2Fs
T3JpZ2luU3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoKm1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSkuZ2V0RGlyZWN0b3J5KGNvbm5lY3Rpb24s
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmll
ciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxlID0gbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7Cisg
ICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7
CisKKyAgICBoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdldElkZW50aWZpZXIsIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZp
bGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8g
aGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRl
bnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7CisK
KyAgICBoYW5kbGUtPmdldEZpbGVIYW5kbGUoY29ubmVjdGlvbiwgV1RGTW92ZShuYW1lKSwgY3Jl
YXRlSWZOZWNlc3NhcnksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24m
IGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVy
LCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCgh
UnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRs
ZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pKTsKKworICAgIGhhbmRsZS0+Z2V0RGlyZWN0b3J5
SGFuZGxlKGNvbm5lY3Rpb24sIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5LCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpyZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisg
ICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhh
bmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAgaGFu
ZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsK
KworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5n
ZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpV
bmtub3duKSk7CisKKyAgICBoYW5kbGUtPnJlc29sdmUodGFyZ2V0SWRlbnRpZmllciwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6
Y2xlYXJTdG9yYWdlRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKwogICAgIG1f
cXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKCkgbXV0YWJsZSB7
CiAgICAgICAgIG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsKICAgICAgICAg
bV9zZXNzaW9uT3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2FlMDg5MC4uZmEw
YTBlYWU3NzI1MjA1NGI2NzU3ZjU4OTg0NWM4YmUwZmM0NDY0ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJDb25u
ZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIk9yaWdpblN0
b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNs
dWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBDbGllbnRPcmln
aW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIg
OiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgeworY2xh
c3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2Fn
ZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9yYWdlTWFuYWdl
cj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwogCkBAIC00NCwy
NSArNDgsMzYgQEAgcHVibGljOgogICAgIHZvaWQgc3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29u
bmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mKTsKIAogICAgIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25J
RCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9CisgICAgdm9pZCBjbG9zZSgpOwogICAg
IHZvaWQgY2xlYXJTdG9yYWdlRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYp
OwogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCwg
Y29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKCk7CiAgICAg
T3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAoaW1w
bGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3NhZ2UgSGFuZGxl
cnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAg
ICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShJ
UEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVudHJ5KEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIGdldEZp
bGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShJ
UEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFN0cmlu
ZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
RXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZl
bHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yPik+JiYpOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4pPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAgIFJlZjxXb3Jr
UXVldWU+IG1fcXVldWU7CiAgICAgU3RyaW5nIG1fcGF0aDsKICAgICBGaWxlU3lzdGVtOjpTYWx0
IG1fc2FsdDsKKyAgICBib29sIG1fY2xvc2VkIHsgZmFsc2UgfTsKICAgICBIYXNoTWFwPFdlYkNv
cmU6OkNsaWVudE9yaWdpbiwgc3RkOjp1bmlxdWVfcHRyPE9yaWdpblN0b3JhZ2VNYW5hZ2VyPj4g
bV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKICAgICBIYXNoTWFwPFdlYkNvcmU6OkNsaWVu
dE9yaWdpbiwgc3RkOjp1bmlxdWVfcHRyPE9yaWdpblN0b3JhZ2VNYW5hZ2VyPj4gbV9zZXNzaW9u
T3JpZ2luU3RvcmFnZU1hbmFnZXJzOworICAgIFdlYWtIYXNoU2V0PElQQzo6Q29ubmVjdGlvbj4g
bV9jb25uZWN0aW9uczsgLy8gTWFpbiB0aHJlYWQgb25seS4KKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeT4gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmZWMyNzFlMGU4ZGU4OThmZjM5OTI2Y2I4
NjQwZWExMGYxNzk5NTUwLi5jNmI2OTc5NTg5NzNmNmEwYzhlYWQ2ZWYzZjk5NGExNDFlM2JmYmMz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KQEAgLTI2LDQg
KzI2LDEwIEBACiAgbWVzc2FnZXMgLT4gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIHsKICAgICBQZXJz
aXN0ZWQoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBlcnNp
c3RlZCkgQXN5bmMKICAgICBQZXJzaXN0KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3Jp
Z2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCisgICAgRmlsZVN5c3RlbUdldERpcmVjdG9y
eShzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKEV4cGVjdGVkPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I+IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgSXNTYW1lRW50
cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmll
cikgLT4gKGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVIYW5kbGUoV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJv
b2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1
bHQpIEFzeW5jIFdhbnRzQ29ubmVjdGlvbgorICAgIEdldERpcmVjdG9yeUhhbmRsZShXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSkgLT4gKEV4cGVjdGVkPFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+
IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgUmVtb3ZlRW50cnkoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUs
IGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYworICAgIFJlc29sdmUoV2ViS2l0OjpGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4gKEV4cGVjdGVk
PFZlY3RvcjxTdHJpbmc+LCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHJlc3VsdCkg
QXN5bmMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDc1YTFhZWQyNDlmOTI4NTk5
MGY2NmNhOTY4MTczNzg4ZWY0N2QwNTQuLmUzYzdlNjUxODM4YTMxMzhjOTNiZjY5YmJlNTU2YWNk
NGZlZWNlMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiArMjYsOSBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAK
KyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAi
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBlbnVt
IGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0TW9kZSA6IGJvb2wgeyBC
ZXN0RWZmb3J0LCBQZXJzaXN0ZW50IH07CkBAIC0zOCwxMiArNDEsMzQgQEAgcHVibGljOgogICAg
ICAgICAsIG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgIHsKICAgICB9CisKICAgICBTdG9y
YWdlQnVja2V0TW9kZSBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAgICAgdm9pZCBz
ZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUpIHsgbV9tb2RlID0gbW9kZTsgfQorCisgICAg
dm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICB7
CisgICAgICAgIGlmIChtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAgICAgIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLT5jb25uZWN0aW9uQ2xvc2VkKGNvbm5lY3Rpb24pOwor
ICAgIH0KKworICAgIFN0cmluZyB0eXBlU3RvcmFnZVBhdGgoY29uc3QgU3RyaW5nJiBzdG9yYWdl
SWRlbnRpZmllcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3Jvb3RQYXRoLmlzRW1w
dHkoKSA/IGVtcHR5U3RyaW5nKCkgOiBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21wb25l
bnQobV9yb290UGF0aCwgc3RvcmFnZUlkZW50aWZpZXIpOworICAgIH0KKworICAgIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQorICAgIHsKKyAgICAgICAgaWYgKCFtX2ZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAgICAgIG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+KHR5cGVTdG9yYWdlUGF0
aCgiRmlsZVN5c3RlbSIpLCByZWdpc3RyeSk7CisKKyAgICAgICAgcmV0dXJuICptX2ZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjsKKyAgICB9CisKIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fcm9vdFBh
dGg7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBTdG9yYWdlQnVja2V0TW9kZSBtX21v
ZGUgeyBTdG9yYWdlQnVja2V0TW9kZTo6QmVzdEVmZm9ydCB9OworICAgIHN0ZDo6dW5pcXVlX3B0
cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOwog
fTsKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYm
IHBhdGgpCkBAIC01MywxNCArNzgsMjkgQEAgT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9yaWdpblN0
b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpCiAKIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjp+T3Jp
Z2luU3RvcmFnZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CiAKLXZvaWQgT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3QoKQordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3Nl
ZChJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgaWYgKG1fZGVmYXVsdEJ1Y2tl
dCkKKyAgICAgICAgbV9kZWZhdWx0QnVja2V0LT5jb25uZWN0aW9uQ2xvc2VkKGNvbm5lY3Rpb24p
OworfQorCitPcmlnaW5TdG9yYWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldCYgT3JpZ2luU3RvcmFn
ZU1hbmFnZXI6OmRlZmF1bHRCdWNrZXQoKQogewotICAgIG1fcGVyc2lzdGVkID0gdHJ1ZTsKLSAg
ICAKICAgICBpZiAoIW1fZGVmYXVsdEJ1Y2tldCkKICAgICAgICAgbV9kZWZhdWx0QnVja2V0ID0g
bWFrZVVuaXF1ZTxTdG9yYWdlQnVja2V0PihtX3BhdGgsICJkZWZhdWx0Il9zKTsKIAotICAgIG1f
ZGVmYXVsdEJ1Y2tldC0+c2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVyc2lzdGVudCk7Cisg
ICAgcmV0dXJuICptX2RlZmF1bHRCdWNrZXQ7Cit9CisKK3ZvaWQgT3JpZ2luU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3QoKQoreworICAgIG1fcGVyc2lzdGVkID0gdHJ1ZTsKKyAgICBkZWZhdWx0QnVj
a2V0KCkuc2V0TW9kZShTdG9yYWdlQnVja2V0TW9kZTo6UGVyc2lzdGVudCk7Cit9CisKK0ZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlciYgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5JiByZWdpc3RyeSkKK3sK
KyAgICByZXR1cm4gZGVmYXVsdEJ1Y2tldCgpLmZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihyZWdp
c3RyeSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmggYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaApp
bmRleCA5ZTQyMTViM2M3MDBiZDQ5OWQwNmUzYjkwNGMxNGVmZDY1Mjg5ZjMwLi5iYzYyY2Y0MjJm
NWEzNWRkMmVjNGJiYTY4NTYxZjcxZTEwYjY4OTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaApA
QCAtMjUsMjIgKzI1LDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5OworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworCiBjbGFzcyBPcmln
aW5TdG9yYWdlTWFuYWdlciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6
CiAgICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCk7CiAgICAg
fk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCk7CiAKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBD
OjpDb25uZWN0aW9uJik7CiAgICAgYm9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7IHJldHVybiBtX3Bl
cnNpc3RlZDsgfQogICAgIHZvaWQgcGVyc2lzdCgpOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkmKTsKIAogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIFN0b3JhZ2VCdWNrZXRNb2RlIDog
Ym9vbDsKICAgICBjbGFzcyBTdG9yYWdlQnVja2V0OworICAgIFN0b3JhZ2VCdWNrZXQmIGRlZmF1
bHRCdWNrZXQoKTsKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1
bHRCdWNrZXQ7CiAgICAgU3RyaW5nIG1fcGF0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0
L21lc3NhZ2VzLnB5CmluZGV4IGU1Y2ZlMGRhNzFjMTI5OTJjOTY2ODYwMGZjNzc5ZGVlYmY3MmIx
NWIuLjNmOTM2ZDI1MjkwMmU1MjQ3OGViODExMDliZTI2OGRhMDk1ZTViOGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dl
YktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQpAQCAtMzE2LDYgKzMxNiw4IEBAIGRlZiB0
eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKCk6CiAgICAgICAgICdXZWJLaXQ6
OkNvbnRlbnRXb3JsZElkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpEaXNwbGF5TGlua09i
c2VydmVySUQnLAogICAgICAgICAnV2ViS2l0OjpEb3dubG9hZElEJywKKyAgICAgICAgJ1dlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcicsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkZvcm1TdWJtaXRMaXN0
ZW5lcklkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpHZW9sb2NhdGlvbklkZW50aWZpZXIn
LAogICAgICAgICAnV2ViS2l0OjpHcmFwaGljc0NvbnRleHRHTElkZW50aWZpZXInLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50
eHQKaW5kZXggOTNkYmE2Y2Q5NjBiMDg5MWIyYmRmNDlmZTVmZTAwNTc1ODRiYTQ2Mi4uZDllMmU4
ZmZlZWM2YzhiOTVjZmQxMzlhMGYwZmFmMGM5NTRlM2Q3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CkBAIC0xMTUs
NiArMTE1LDkgQEAgTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV09yaWdpblN0b3Jl
LmNwcCBAbm8tdW5pZnkKIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJD
b25uZWN0aW9uLmNwcCBAbm8tdW5pZnkKIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2Vi
U1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCBAbm8tdW5pZnkKIAorTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCitOZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcAogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAogCkBAIC02OTIsNiArNjk1LDcgQEAgV2ViUHJvY2Vzcy9V
c2VyQ29udGVudC9XZWJVc2VyQ29udGVudENvbnRyb2xsZXIuY3BwCiBXZWJQcm9jZXNzL1dlYkF1
dGhlbnRpY2F0aW9uL1dlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRvci5jcHAKIFdlYlByb2Nlc3Mv
V2ViQXV0aGVudGljYXRpb24vV2ViQXV0aG5Qcm9jZXNzQ29ubmVjdGlvbi5jcHAKIAorV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcAogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9TZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcAogV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9TaGFyZWFibGVCaXRtYXBVdGlsaXRpZXMuY3BwCiBXZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5jcHAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDE5MWY3
NmIzODk0ZTkxN2M1MjdjNGY5MzhmZWVkODYzYzc3MDFjNjkuLjQyYmVjYTlkOGY0ZjA3NjZmZWRi
YjI5MTMyNzExNGY2YmU2YTQwYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTQ2OSw2ICsxNDY5LDkgQEAKIAkJOTMwODVEREYyNkU1
QkNGMTAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0UyNkUy
RTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oICov
OyB9OwogCQk5MzA4NURFMDI2RTVCQ0ZEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURD
NDI2RTFCQkJEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggKi87IH07CiAJCTkz
MDg1REUxMjZFNUJEMTMwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0Qy
NkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi87IH07
CisJCTkzMTJCQUQ1MjZGMzNDMjYwMEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUw
MjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKKwkJ
OTMxMkJBRDYyNkYzM0MyOTAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MzI2RjA2
QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLzsgfTsKKwkJOTMxQTFC
RTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUExQkUwMjZGODVDMzIwMDgx
QTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi87IH07CiAJCTkzMjFENTg2MUEzOEVF
M0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjFENTg1MUEzOEVFM0MwMDgwNTJC
RSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJOTMyMUQ1OEExQTM4
RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAv
KiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMyMzYxMUUxQjAxNURBODAwRkE5MjMyIC8qIF9XS092ZXJs
YXlTY3JvbGxiYXJTdHlsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTMyMzYxMUQxQjAxNURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJT
dHlsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0xNDg1LDYgKzE0ODgsNyBAQAogCQk5MzU2RjJERjIxNTJCNzIzMDBFNkQ1REYgLyogV2ViU1dP
cmlnaW5TdG9yZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5M0JBMDRERjIxNTFBREY0MDA3RjQ1NUYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgKi87
IH07CiAJCTkzNTZGMkUwMjE1MkI3NTIwMEU2RDVERiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENv
bm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTNCQTA0REQyMTUxQURGMzAwN0Y0NTVGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVj
dGlvbi5jcHAgKi87IH07CiAJCTkzNTZGMkUxMjE1MkI3NjYwMEU2RDVERiAvKiBXZWJTV1NlcnZl
ckNvbm5lY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTNCQTA0RTEyMTUxQURGNDAwN0Y0NTVGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5j
cHAgKi87IH07CisJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzVCNTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeS5oICovOyB9OwogCQk5MzVFRUI5QjEyNzc2MTdDMDAzMzIyQjggLyogV0tCdW5k
bGVCYWNrRm9yd2FyZExpc3RJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzVFRUI5ODEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9y
d2FyZExpc3RJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJOTM1RUVCOUYxMjc3NjFBQzAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRM
aXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVF
RUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzY4RUVERTIzMDNB
OTAyMDBCREIxMUEgLyogU3RvcmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM2OEVFREMyMzAzQThE
ODAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5hZ2VyU2V0TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsK
QEAgLTQ5MDQsNiArNDkwOCwxNCBAQAogCQk5MzA4NURDQzI2RTJFOTAyMDAwRUM2QTcgLyogTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMDg1RENEMjZFMkU5MDIwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFB
MDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1
NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1OTI2RjFC
OTY3MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg1
MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg3MUEzOEVFNzQwMDgwNTJCRSAv
KiBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVk
aWF0ZUFjdGlvblR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1t
ZWRpYXRlQWN0aW9uVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQ5MTgs
NiArNDkzMCw4IEBACiAJCTkzNDI1ODhGMjU1NURDQTUwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Np
b25VdGlsaXRpZXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25VdGls
aXRpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNDI1ODk4MjU1QjUzNEIw
MDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTkzNEI3MjQzMTlGNUI5QkUwMEFFOTZENiAvKiBXS0FjdGlvbk1lbnVJ
dGVtVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBY3Rpb25NZW51
SXRlbVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUI1Nzk4MjZGNTEy
NzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFD
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk1MTI3NzYxNkQwMDMzMjJCOCAv
KiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzNUVFQjk2MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3
YXJkTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUJhY2tG
b3J3YXJkTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NzEyNzc2
MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05NjkxLDYgKzk3MDUsMTQgQEAKIAkJ
OTMwODVEQzIyNkUxQkI2NTAwMEVDNkE3IC8qIHN0b3JhZ2UgKi8gPSB7CiAJCQlpc2EgPSBQQlhH
cm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yLmggKi8sCisJCQkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLywKKwkJCQk5MzFBMDc1MzI2RjA2QUI0
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLywKKwkJCQk5MzFBMDc1NzI2
RjEyNUEzMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8s
CisJCQkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkuY3BwICovLAorCQkJCTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8sCisJCQkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAgKi8sCisJCQkJOTMxQTA3NTAyNkYw
NjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1
REMzMjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwICovLAogCQkJ
CTkzMDg1REM0MjZFMUJCQkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLywK
IAkJCQk5MzA4NURDNzI2RTFDNkVFMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1l
c3NhZ2VzLmluICovLApAQCAtMTAwMDYsNiArMTAwMjgsOCBAQAogCQkJCUNENjE3ODExMUU2REU5
ODAwMEZEQTU3RCAvKiBjb2NvYSAqLywKIAkJCQkyRDI4RjNERjE4ODVDQ0I0MDA0QjlFQUUgLyog
aW9zICovLAogCQkJCUJDMTExQURFMTEyRjVCOUEwMDMzN0JBQiAvKiBtYWMgKi8sCisJCQkJOTMx
QTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3Bw
ICovLAorCQkJCTkzMUEwNzVBMjZGMUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5LmggKi8sCiAJCQkJMUE3Mjg0NDQxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25T
dGF0ZUNvbnZlcnNpb24uY3BwICovLAogCQkJCTFBNzI4NDQ1MTk1OUVEMTAwMDA3QkNFNSAvKiBT
ZXNzaW9uU3RhdGVDb252ZXJzaW9uLmggKi8sCiAJCQkJRjQzQTlDREUyNUQ3MkUyRDAwOTkwRTI2
IC8qIFNoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAgKi8sCkBAIC0xMjE3OCw2ICsxMjIwMiwx
MCBAQAogCQkJCTFBQTU3NUZCMTQ5NkI1MjYwMEE0RUUwNiAvKiBFdmVudERpc3BhdGNoZXIuaCBp
biBIZWFkZXJzICovLAogCQkJCTU3MkVCQkQ3MjUzN0VCQUUwMDA1NTJCMyAvKiBFeHRyYVByaXZh
dGVTeW1ib2xzRm9yVEFQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTdCODI2NDgyMzA1MEM1MTAw
QjcyRUIwIC8qIEZpZG9TZXJ2aWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFBMUJFMjI2Rjg3
MDA5MDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTMxMkJBRDYyNkYzM0MyOTAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5MzVCNTc5QTI2RjUxOTMzMDA4QjQ4QUMgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDUyNkYz
M0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMDBCOTY2MUExOEUyNUFFMTAwQ0UxRjg4IC8qIEZpbmRDbGllbnQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTFBOTBDMUY0MTI2NEZENzEwMDNFNDRENCAvKiBGaW5kQ29udHJvbGxlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQzU5QzRBNTkxOEI4MTE3NDAwN0JEQ0I2IC8qIEZvY3VzZWRFbGVt
ZW50SW5mb3JtYXRpb24uaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHku
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdiMmVhYzVkYTY2ZDdhNTg2NWM1ODJk
MDVkMGMwMTZjZmU3MjEwODMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKQEAg
LTAsMCArMSwxMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvci5oIgorI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2Vz
LmgiCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRpb25Pci5oPgorI2luY2x1ZGUgPFdlYkNvcmUv
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK1JlZjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5PiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlv
biYgY29ubmVjdGlvbikKK3sKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5KGlkZW50aWZpZXIsIGNvbm5lY3Rpb24pKTsKK30KKworRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBj
b25uZWN0aW9uKQorICAgIDogbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCisgICAgLCBtX2Nvbm5l
Y3Rpb24oJmNvbm5lY3Rpb24pCit7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eTo6Y29ubmVjdGlvbkNsb3NlZCgpCit7CisgICAgbV9jb25uZWN0aW9uID0gbnVsbHB0cjsK
K30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeShGaWxl
U3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OkV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICgh
bV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6
RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9
KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmll
cigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKGZhbHNlKTsKKworICAgIGlmIChtX2lkZW50aWZpZXIudG9VSW50NjQoKSA9PSAqaWRlbnRp
ZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworCisgICAgbV9j
b25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFu
YWdlcjo6SXNTYW1lRW50cnkobV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxl
dGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZXN1bHQpIG11
dGFibGUgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQpOworICAgIH0pOworfQor
Cit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUoY29uc3Qg
U3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRs
ZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2Vi
Q29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29u
bmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OkdldEZpbGVIYW5kbGUobV9pZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSks
IFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUg
eworICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5l
cnJvcigpKSB9KTsKKyAgICAKKyAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6
VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1
ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6
RmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcgeyBuYW1lIH0sIFdURk1vdmUoaGFu
ZGxlKSkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6
OmdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdl
YkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXREaXJlY3RvcnlIYW5kbGUobV9p
ZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlc3Vs
dCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRp
b24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJvcigpKSB9KTsKKyAgICAKKyAg
ICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVj
dGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIGF1dG8gaGFuZGxlID0gRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsK
KyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZTo6Y3JlYXRlKFN0cmluZyB7IG5hbWUgfSwgV1RGTW92ZShoYW5kbGUpKSk7CisgICAgfSk7
Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkoY29u
c3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVj
dGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlJlbW92ZUVudHJ5KG1faWRlbnRpZmll
ciwgbmFtZSwgZGVsZXRlUmVjdXJzaXZlbHkpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmIChl
cnJvcikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNl
cHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yLnZhbHVlKCkpIH0pOworCisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJp
bmc+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikK
KyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdl
YkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRv
IGlkZW50aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAo
IWlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihWZWN0b3I8U3Ry
aW5nPiB7IH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVzb2x2ZShtX2lkZW50aWZpZXIsIG1ha2VPYmpl
Y3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGU+KCppZGVu
dGlmaWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
XShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRU
b0V4Y2VwdGlvbkNvZGUocmVzdWx0LmVycm9yKCkpIH0pOworCisgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKFdURk1vdmUocmVzdWx0LnZhbHVlKCkpKTsKKyAgICB9KTsKK30KKworfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmZkYjg0MTFlYTE4ODViODhlZjNkOWY1MzBlOTZmMzVjYTA4MzQ2OGQKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oCkBAIC0wLDAgKzEsNjMgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUhhbmRsZUltcGwuaD4KKwor
bmFtZXNwYWNlIElQQyB7CitjbGFzcyBDb25uZWN0aW9uOworfQorCituYW1lc3BhY2UgV2ViQ29y
ZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit9CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5IGZp
bmFsIDogcHVibGljIFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsIHsKK3B1YmxpYzoKKyAg
ICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+IGNyZWF0ZShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworICAgIHZvaWQg
Y29ubmVjdGlvbkNsb3NlZCgpOworCitwcml2YXRlOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rp
b24mKTsKKworICAgIC8vIEZpbGVTeXN0ZW1IYW5kbGVJbXBsCisgICAgc3RkOjpvcHRpb25hbDx1
aW50NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSB7IHJldHVybiBtX2lkZW50aWZpZXIu
dG9VSW50NjQoKTsgfQorICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYm
KSBmaW5hbDsKKyAgICB2b2lkIGdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2Vw
dGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsK
KyAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3Jl
YXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9u
T3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJikgZmluYWw7
CisgICAgdm9pZCByZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVj
dXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9p
ZD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmlu
Zz4+JiYpPiYmKSBmaW5hbDsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBtX2lkZW50aWZpZXI7CisgICAgUmVmUHRyPElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9u
OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9u
LmNwcAppbmRleCA4ODk1MDhhYTZjNzMzMjFjNDMzZGI1N2Q5MTE3M2U3MDQ2ODdlNDFhLi45MWFi
YWVjODkyNmQ3Mzg1ZmM2MTU5MWM5NTI5ZjBhYWM3NTI1ODE3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdl
Q29ubmVjdGlvbi5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJXZWJTdG9yYWdlQ29ubmVjdGlvbi5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eS5oIgogI2luY2x1ZGUgIk5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5o
IgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAi
V2ViUHJvY2Vzcy5oIgpAQCAtMzgsMTYgKzM5LDMxIEBAIFJlZjxXZWJTdG9yYWdlQ29ubmVjdGlv
bj4gV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNyZWF0ZSgpCiAgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgV2ViU3RvcmFnZUNvbm5lY3Rpb24pOwogfQogCi12b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9u
OjpwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2luLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJTdG9yYWdlQ29u
bmVjdGlvbjo6Z2V0UGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2lu
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewog
ICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6UGVyc2lzdGVkKG9yaWdpbiksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
KTsKIH0KIAotdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdChXZWJDb3JlOjpDbGll
bnRPcmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KGNvbnN0IFdl
YkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5j
UmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdChvcmlnaW4pLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rp
b246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBv
cmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdl
YkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBhdXRvJiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5z
dXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOworICAgIGNvbm5lY3Rp
b24uc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkZp
bGVTeXN0ZW1HZXREaXJlY3Rvcnkob3JpZ2luKSwgW3dlYWtDb25uZWN0aW9uID0gbWFrZVdlYWtQ
dHIoY29ubmVjdGlvbiksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAg
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29u
dmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisKKyAgICAgICAgaWYgKCF3
ZWFrQ29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJD
b3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxv
c3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1ZSgpLCAqd2Vha0Nvbm5lY3Rpb24pOworICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6Y3JlYXRlKHsgfSwgV1RGTW92ZShpbXBsKSkpOworICAgIH0pOworfQorCiBJUEM6OkNvbm5l
Y3Rpb24mIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpjb25uZWN0aW9uKCkKIHsKICAgICByZXR1cm4g
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCku
Y29ubmVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAppbmRleCAxYzBlNjYzNjli
NTZlZGI3MGU5M2E4ODllMzI1MDM1NjY2OTMzNmU1Li4wZDZjMDFiYTgyMWNiYzQ1NDI3ZWY3NmQ2
YjZhZWJlY2QxNjdhYjg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaApAQCAtMzEsNiAr
MzEsMTEgQEAgbmFtZXNwYWNlIElQQyB7CiBjbGFzcyBDb25uZWN0aW9uOwogfQogCituYW1lc3Bh
Y2UgV2ViQ29yZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFz
cyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
Y2xhc3MgV2ViU3RvcmFnZUNvbm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U3RvcmFn
ZUNvbm5lY3Rpb24gewpAQCAtMzgsOCArNDMsOSBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxX
ZWJTdG9yYWdlQ29ubmVjdGlvbj4gY3JlYXRlKCk7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBwZXJz
aXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpIGZpbmFsOwotICAgIHZvaWQgcGVyc2lzdChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXRQZXJz
aXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVu
dE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZv
aWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFsOwogCiAgICAgSVBDOjpDb25u
ZWN0aW9uJiBjb25uZWN0aW9uKCk7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM1MWExZjhlZDc2MzRkZGUxOTFiNDBi
OTZiNTFlMzI1ZDAzMTA1ODIuLmUyNGJiZDk0NmNkMGE4MWExZDA4YmQ0NDAxMjdkODYxYWM0ZjU2
OGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOS0yMSAgU2lodWkgTGl1ICA8c2lodWlf
bGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBzdXBwb3J0IGZvciBGaWxlIFN5
c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RF
eHBlY3RhdGlvbnM6CisgICAgICAgICogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9y
eS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3RvcmFnZS9m
aWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWw6IEFkZGVkLgorCiAy
MDIxLTA5LTIwICBBeXVtaSBLb2ppbWEgIDxheXVtaV9rb2ppbWFAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT04gKHIyODExMDI/KTogWyBNYWMgXSBtZWRpYS90cmFjay90cmFjay1pbi1i
YW5kLmh0bWwgaXMgYSBmbGFreSB0aW1lb3V0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cK
aW5kZXggMzQzN2E1ZTE0N2Q3ZGRhNDBkMWJlOWJjYzcxMDlhMjY4MDVhZTJhYy4uMmExN2EyYjE0
ZGU5OGM2MDI5MDVhM2M1MzE5NWYzOGM1Mjc0NTk2YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjEtMDktMjEgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0
ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRl
eGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1Nh
bWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZy
YW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRs
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRl
cmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50
ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRG
aWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVh
bS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVT
dHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVG
aWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisKIDIwMjEtMDktMjAgIEFkaXR5YSBL
ZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBpbnB1dC1z
ZWN1cml0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZjVkY2FjZDFlMmExNzNlZWRmYWJjMDE2NGJk
Y2ZmMWM3ZWE5ZTQ3Yy4uZTRiM2RjYTQyNTVkMzBlYzliYWU4MGIyMTA4YzU3ZmE3MTI3NmE2MyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMDAsNiArMjAwLDcgQEAgZmFzdC9zcGVlY2hyZWNvZ25p
dGlvbi9pb3MvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1p
c3Npb25zLyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdl
LyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3MvIFsgU2tpcCBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvIFsgU2tpcCBdCiAKICMg
YXBwLXByaXZhY3ktcmVwb3J0IHRlc3RzIHJlbHkgb24gV2ViS2l0QWRkaXRpb25zCiBodHRwL3Rl
c3RzL2FwcC1wcml2YWN5LXJlcG9ydC8gWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1
ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4u
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA2OTBkMjc5MzQyZTZhOGQ5NDk5NjkxYjE5
ZjVjZDk2NjRiYjQwMDk2Li4xYjRkYzhiNmRhODI2ZDVkZjIzZTdmYTg5N2ZkMWVhNjczYjRlZDJl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBA
IC0yLDUgKzIsNSBAQAogUEFTUyBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCBiZSB1bmRlZmlu
ZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMuCiBQQVNTIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUg
bXVzdCBiZSB1bmRlZmluZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMuCiBGQUlMIG5hdmlnYXRvci5z
dG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWpl
Y3QgaW4gYSBzYW5kYm94ZWQgaWZyYW1lLiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0Rp
cmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0Rp
cmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046IFR5cGVFcnJvciIKLUZBSUwgbmF2aWdhdG9yLnN0
b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVj
dCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
c2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAi
bmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk6IFJFSkVDVEVEOiBOb3RTdXBwb3J0ZWRF
cnJvciIKK0ZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJl
Y3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDog
U2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046
IFR5cGVFcnJvciIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IDQxMjRiN2JlNGRjZGFhZDRhYjkzMDc5ZGIyZGMwZGUxYzMyNzJlYjQuLjIxNWFiNjYwYmQw
NGJlYmViNjU0ZjgyZjM2ZWExMzM3ZTBiMDJhNzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiAKLUZBSUwgU3RvcmUgaGFuZGxlIGlu
IEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5k
IHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4ZWREQi4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBh
bmQgcmVhZCB1c2luZyBhIGN1cnNvci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBpbmxpbmUga2V5cy4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWRE
QiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5l
dyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBo
YW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCB1c2luZyBhIGN1cnNv
ci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5k
ZXhlZERCIHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVF
bnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggODE1ZTc1
ZjYzMmQ0ZWZjYzhkNmIyMTkzNDMyYmEwY2NmZDkxNDQzOC4uODM3ZWFlMTA2MjhlZGY5M2YxNzU2
OGNiOTIzMGJhMmNiOGQzMzVjNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRl
bnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVz
IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNT
YW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBkaXJlY3RvcnkgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50
aWNhbCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxz
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3Ig
ZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUg
aW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGRp
cmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMgcmV0dXJucyB0
cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRp
ZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUgc2Ft
ZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRy
eSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVy
bnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBp
biBhIGRpZmZlcmVudCBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3Rv
cnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9h
ZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGUzY2E3YzQ2ODgyNTBmNDQ3MTU4NjUyMmE4ODljZGVh
ZmVmZDFmODQuLjM5NWVjYTU1NGJkZDdiOGFiMDIyZWQ1MmM5MmQ0NDMxZGMxMmEzYzIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1C
cm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZyYW1l
LCBkZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJy
b2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVkIHdvcmtlciBhbmQgc2Vydmlj
ZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3YWY0
MTE4MzFkYzBmYjZjYjI2NWI4NDNiMmIwY2VmNzAzYTAwNGMzLi40YjFjNWJlM2I3N2Q4ZjdiNjMw
NDZmOWEwYTEyZGVhNmM0ODI4ODE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Ut
RXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1GQUlM
IEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQg
aW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWls
IHRvIHNlbmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQg
dG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5k
b3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIHRvIGEgc2FuZGJveGVkIGlmcmFtZS4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byBhIGRhdGEgVVJJ
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQg
bWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBj
cm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2lu
ZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cmlu
ZGV4IDUzZTkwZTIzYzQ5MWY1ODhkMWI1YjZlYmVjMjEyMmQ3YWNjZTgwNmIuLjgyMWM2MWM5ZjRm
MWVhNGZiMTVjZTExMWQ5ZmMyZjcwNmEwYmJjNGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZTVkZWMwOGE5NTNjYTQwNmUxYTRmNTk4ZGQ4ZTQ0
ZjBhYTc5NzdiNS4uYTkzODQ3ZDAwMzViM2JmN2VhYjU1OWUwNDgwNDVkMDZjYjA2YjU4MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQt
d2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1l
IG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdp
bmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9y
aWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CmluZGV4IDQ1MTA2NWUzMjJkYWZlMDRiZWFlMjE0OWU1MTQwYWE2NWMzNmY3MGQuLjgx
ZjZmNjEwN2Y0YWZmYTE5YzM4OGVlMWNjOGQwNGIxYTNkODRlZGYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGVkaWNhdGVkIHdvcmtlci4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2hhcmVkICB3b3JrZXIuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2hhcmVkICB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1l
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cmlu
ZGV4IDg2NDVkOTNlZTU3MjE1NzliYjllZmM1MjgyNDY0NDQ5NzI1YzEzZTcuLjNjZTllODMyMjBl
ZGQyYmJmYTc0NmQ0Y2ViMjk0ZDY3MGE3ZDVjNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBA
CiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUgc3JjZG9jLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQg
c2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGFu
IGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRv
d3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
aW5kZXggZjA5NTk5NTg5NjNmMmY0ZDZhOTdlOGE3YmE3Mzc0ZmI1MWU4MmQ0Zi4uNmQ5NjI2NTg0
MTk4YmU5MDc4MWVmYzk3YjFkMGZkYzhmYjFmOGE4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEs
NSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdp
biB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNh
bmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2Ft
ZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3Jr
ZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDcyZmYzZjU3NDEyZGQwOGVjNmE0YmYzYzA1ZmMzNjhiODlhZmFhNjYuLjI0YjQ2ZGQ1
OWFjYTA3OTA0ZmQ2N2I5OTExZjcwNzA2YWQ5YTI0YmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgZGVkaWNhdGVk
IHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
c2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCA0Y2EwZjk0NzEwYzhlM2UwNWY5NWEwNzQ3MDljZDg3YTA3YjI4NTdkLi43ZTY2MWNlMGY3
OTM0ZjY5M2QyNmYzOTE3ZTA3Njg0MGU3MWNkZjljIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsOSBAQAogCi1GQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBh
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24g
YW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJl
YWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQg
ZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBh
IGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3Vs
ZCBpZ25vcmUgdGhlIHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVt
b3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIG5vbi1lbXB0eSBk
aXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBy
ZW1vdmUoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWIt
aXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIGZp
bGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggMWZjNDc0ODA2MjNlYWI5M2JjOTZhOTMxMGE3
YzU2NjNmODU4ODIzMC4uNzgxNzFmZjBlNDg3OGViNDg5OTAxNTA5Y2ViNDU4M2Q4NTdhNjY4OCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0
RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNy
ZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1
cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBk
aXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFkeSBleGlzdHMg
d2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZSgp
IHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVu
IHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9y
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9
dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0
aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGly
ZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdp
dGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVj
dG9yeUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFt
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgp
IHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERp
cmVjdG9yeUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdp
dGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSB3
aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxl
SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5k
ZXggMzM2ZTRkYzczOTFiMDgzZmQwNGFiYjgxNjRiZjI2MGIwY2VkMTVkOC4uYWU1NWQxMzRkMjc0
MjVlMDdjYTFjODZmYTY3YTZmZDRjZTg3ZjU0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdl
dEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMyArMSwxMyBAQAogCi1G
QUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3Rpbmcg
ZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRs
ZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZvciBub24tZXhpc3RpbmcgZmls
ZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShj
cmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlz
dGluZyBmaWxlcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3RvcnkgYWxy
ZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3Rvcnkg
YWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5h
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgp
IHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUg
ZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVq
ZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZv
ciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJl
dHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdoZW4gYSBkaXJlY3Rv
cnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9y
eSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4i
IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhpc3RzLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRy
dWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0
ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXgg
OTJiYTAwNjFjMTEyZGI5OWE2OTZjMDNmYjRhYjBhODcxMGFiM2JlMS4uZmUxZmZhOWM0NWJmNzg5
MThjNjhiZDgxMjI5ZDcyZWUwMzA2YTRjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9u
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBACiAKLUZBSUwgcmV0dXJuaW5n
IGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3QgY3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgQEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3Jr
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBlbnRyaWVzOiBmdWxsIGl0
ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB2YWx1
ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGtleXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRvciBnZXRzIGdhcmJhZ2UgY29s
bGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJldHVybmluZyBl
YXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgQEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdv
cmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdmFsdWVzOiBmdWxsIGl0ZXJh
dGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGtleXM6IGZ1bGwg
aXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXRlcmF0
aW9uIHdoaWxlIGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCBhYzZmYzE5NDg0NzljMTdkOThiMDM4Yjc0N2Q2YjkzMDZkYmMw
OTJjLi4yODE0NzIyNWJkYTg0OTI4ZGMzMjY3NjQxMDBhNDlmZmRhMmJjMDE4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTEg
KzEsMTEgQEAKIAotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5
IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIG5vbi1l
bXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQg
ZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNo
b3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVu
dHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxk
IGZhaWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHJlbW92ZUVudHJ5
KCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJl
bW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBl
bXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVF
bnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJz
aXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4iIG5h
bWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVF
bnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igc2hvdWxkIGZh
aWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDU1NzFmMTFkMWNmMDBkMTM5ZWZhOWY4ZGM2
ZThjNDJjMGIxYjMzNDAuLmY1ZTY1MWIxZWYxYzdmMTE5NWM2YTU3YTA3MjczNjQyMjcxM2MyNjEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJl
c29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEs
NiArMSw2IEBACiAKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5IGFycmF5IGZvciBzYW1lIGRp
cmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJl
dHVybnMgY29ycmVjdCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24tYXNjaWkgY2hhcmFjdGVycyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZlIHJldHVybnMgbnVs
bCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCitGQUlMIFJlc29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3Rvcnkg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVj
dCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5z
IGNvcnJlY3QgcGF0aCB3aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBlbnRyeSBpcyBub3Qg
YSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxl
LWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhh
bmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDMzMDEwZDcxODQ1MjJiYjM3MDVlYjM4YjczNGEzZmEwZDI2ODY2ZmMuLjNiOGMwZDhk
YWIwMTgwZTkyM2M0NDM5N2Y2NDFjNjVkY2FlN2ZkOTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGlj
YXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5k
bGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDMgQEAKIAotRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhh
bmRsZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgQXR0ZW1wdCB0byBj
cmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZp
bGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmls
ZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggOWNmMDE5ZDI1Njlj
ZmY0OThjMTA0ZjE1YzdhZmFkYTFjMTk3YTZjNy4uZjdjMTcwNzNhZWVmZjlhYWYwYjcyOGNjYmUy
YWI4ZTFkZDYxYTU3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBA
IC0xLDQgKzEsNCBAQAogCi1GQUlMIGdldEZpbGUoKSBwcm92aWRlcyBhIGZpbGUgdGhhdCBjYW4g
YmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGUo
KSByZXR1cm5zIGxhc3QgbW9kaWZpZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgorRkFJTCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNlZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGUoKSByZXR1cm5zIGxhc3Qg
bW9kaWZpZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmls
ZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGEwNjkyNjYxZGQyM2Qx
MGMwOWZmZDU5ZTZkYmUwYjBjOGUyYzYwYmEuLmQxNTI2YzU5OTU4NjYyNWYzMTZhNzY3OThmNzAx
NzQ4Yjg0NmZlZTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFi
bGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEg
c3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBl
ZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRo
IHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2Fu
IGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5kcyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25z
IGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcGxh
eXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIEJsb2IgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBh
cmFtIG9iamVjdCB3aXRoIHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIG11bHRpcGxl
IGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgbXVsdGlwbGUgb3Bl
cmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
cGxheXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
YWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0
YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBmOTdlODEy
ZDc3MmE2NTUxNTdhNWRhY2VmYzEzNWZjMDY2YjBhMjJjLi4zN2Y3YTY0YWU5YTVmMDFkZGQ4N2Y0
YWNkYTg3OWE1NGI2NjY0OGU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKQEAgLTEsMzEgKzEsMzEgQEAKIAotRkFJTCB3cml0ZSgpIHdpdGggYW4g
ZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQg
cG9zaXRpb24gdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2VjdXRpdmVseSBhcHBlbmRzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0
aG91dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBi
bG9iIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUo
KSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEg
dmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9uZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBz
dHJpbmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggdW5peCBsaW5l
IGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
d3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVt
cHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZlciBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9z
ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3Ry
ZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWls
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiB0
cnVuY2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkg
b25lIGNsb3NlKCkgb3BlcmF0aW9uIG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFtIHBlcnNp
c3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNz
aW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgV3Jp
dGVQYXJhbXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogc2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFt
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBp
bnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVqZWN0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFu
IGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEg
YmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gdG8gYW4gZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8g
YW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2Vj
dXRpdmVseSBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUo
KSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5kcyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBw
b3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgYmxvYiBh
bmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0
ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBzdHJp
bmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdy
aXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcgcHJl
c2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEg
c3RyaW5nIHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRv
IGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgp
IHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVj
dG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWlj
IHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xv
c2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0
ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBhdG9taWMgd3JpdGVzOiB0cnVuY2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGFmdGVyIGNs
b3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3Jp
dGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxlIGZpbGUgc3RyZWFt
IHBlcnNpc3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1vdmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0V3JpdGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2lu
ZyBzaXplIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJh
bXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIFdyaXRlUGFyYW1zOiBzZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBibG9iIHRv
IGFuIGVtcHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3Ry
ZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdy
aXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDUwMDkyNTRhNGYx
MGUyNzkzYmQ2NGM4NDE5NTU5MjQ1MjEyZjJkMTEuLmUzODUxZmNhMzNlNGM5ZDgzOTYxOTFiNmQx
ZGJhZWFjZjBkYTM4OTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3Jp
dGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSwxMiArMSwxMiBAQAogCi1GQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxl
KCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3Rv
cnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVu
Y2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdE
YXRhOiB0cnVlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRo
IHNvdXJjZSBjb250ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBj
cmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxl
IGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Vyc29yIHBvc2l0
aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBpcyB1bmxvY2tlZCBhZnRlciBl
YWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCB0cnVu
Y2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgZmFpbHMgd2hl
biBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB0cnVuY2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVk
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBF
eGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxp
emVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0
YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPiBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246
IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBjb21tYW5kcyBhcmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVy
YXRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L3drMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQyMWRlZDU0OTk2ZTdmMGFjYzg4MDZmYTdlN2U5
YTI3ZTdjZmNlNDYuLmQ4ZGNlYmU0ODcxMDIzMDkzNDUzYWZhZmI4ZjNkMjcyYmRmOTNmNjggMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCkBAIC04NjQsMyArODY0
LDUgQEAgZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1lbnRlci13aGlsZS1leGl0aW5nLmh0bWwgWyBQ
YXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgUGFz
cyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgUGFzcyBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBQYXNz
IF0KK3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy8gWyBQYXNzIF0KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmVlZjdiNmVjN2Nk
YjBhNmUxMzIxMzA5YmFmZjA1ZTk0OTQxMWJmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwyMCBAQAorVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9u
YWxpdGllcyBvZiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyByb290SGFuZGxlLm5hbWUgaXMgIiIKK1BBU1Mgcm9vdEhhbmRs
ZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGRpckhhbmRsZS5uYW1lIGlzICJkaXIiCitQQVNT
IGRpckhhbmRsZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGlzU2FtZUVudHJ5IGlzIGZhbHNl
CitQQVNTIGZpbGVIYW5kbGUubmFtZSBpcyAiZmlsZSIKK1BBU1MgZmlsZUhhbmRsZS5raW5kIGlz
ICJmaWxlIgorUEFTUyBoYW5kbGVOYW1lcy5sZW5ndGggaXMgMgorUEFTUyBoYW5kbGVOYW1lc1sw
XSBpcyAiZGlyIgorUEFTUyBoYW5kbGVOYW1lc1sxXSBpcyAiZmlsZSIKK1BBU1MgY3JlYXRlRXJy
b3IudG9TdHJpbmcoKSBpcyAiTm90Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZv
dW5kIGhlcmUuIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9k
aXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lz
dGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODM3M2Q4
NmUzN2VlZDg1MTRmNDM3NjM0ZWZkNGUzMGE4ZjgwZmRjNAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2lj
cy5odG1sCkBAIC0wLDAgKzEsMTAwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBjaGVja3MgYmFz
aWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS4iKTsKKwordmFy
IHJvb3RIYW5kbGUsIGRpckhhbmRsZSwgZmlsZUhhbmRsZSwgaXNTYW1lRW50cnksIGhhbmRsZU5h
bWVzLCBjcmVhdGVFcnJvcjsKKworZnVuY3Rpb24gZmluaXNoVGVzdChlcnJvcikKK3sKKyAgICBp
ZiAoZXJyb3IpIHsKKyAgICAgICAgdGVzdEZhaWxlZChlcnJvcik7CisgICAgfQorICAgIGZpbmlz
aEpTVGVzdCgpOworfQorCitmdW5jdGlvbiBnZXREaXJlY3RvcnkoKSB7CisgICAgbmF2aWdhdG9y
LnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIHJvb3RI
YW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicm9vdEhhbmRs
ZS5uYW1lIiwgIiIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUu
a2luZCIsICJkaXJlY3RvcnkiKTsKKyAgICAgICAgY3JlYXRlRGlyZWN0b3J5SGFuZGxlKHJvb3RI
YW5kbGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVy
cm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY3JlYXRlRGlyZWN0b3J5SGFuZGxlKGZyb21I
YW5kbGUpIHsKKyAgICBmcm9tSGFuZGxlLmdldERpcmVjdG9yeUhhbmRsZSgiZGlyIiwgeyAiY3Jl
YXRlIiA6IHRydWUgfSkudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGRpckhhbmRsZSA9IGhh
bmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUubmFtZSIsICJk
aXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkaXJIYW5kbGUua2luZCIsICJk
aXJlY3RvcnkiKTsKKyAgICAgICAgY2hlY2tJZlNhbWVFbnRyeShyb290SGFuZGxlLCBkaXJIYW5k
bGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9y
KTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY2hlY2tJZlNhbWVFbnRyeShoYW5kbGUxLCBoYW5k
bGUyKQoreworICAgIGhhbmRsZTEuaXNTYW1lRW50cnkoaGFuZGxlMikudGhlbigocmVzdWx0KSA9
PiB7CisgICAgICAgIGlzU2FtZUVudHJ5ID0gcmVzdWx0OworICAgICAgICBzaG91bGRCZUZhbHNl
KCJpc1NhbWVFbnRyeSIpOworICAgICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgdHJ1
ZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgIH0pOworfQorCitmdW5jdGlvbiBjcmVhdGVGaWxlSGFuZGxlKGZyb21IYW5kbGUsIGNy
ZWF0ZSkgeworICAgIGxldCBvcHRpb25zID0geyAiY3JlYXRlIiA6IGNyZWF0ZSB9OworICAgIGZy
b21IYW5kbGUuZ2V0RmlsZUhhbmRsZSgiZmlsZSIsIG9wdGlvbnMpLnRoZW4oKGhhbmRsZSkgPT4g
eworICAgICAgICBmaWxlSGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImZpbGVIYW5kbGUubmFtZSIsICJmaWxlIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygiZmlsZUhhbmRsZS5raW5kIiwgImZpbGUiKTsKKyAgICAgICAgcmVzb2x2ZVBhdGgo
KTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgaWYgKGNyZWF0ZSkgeworICAg
ICAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgY3JlYXRlRXJyb3IgPSBlcnJvcjsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJjcmVhdGVFcnJvci50b1N0cmluZygpIiwgIk5vdEZvdW5kRXJyb3I6IFRoZSBvYmpl
Y3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIpOworICAgICAgICBmaW5pc2hUZXN0KCk7CisgICAg
fSk7Cit9CisKK2Z1bmN0aW9uIHJlc29sdmVQYXRoKCkgeworICAgIHJvb3RIYW5kbGUucmVzb2x2
ZShmaWxlSGFuZGxlKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaGFuZGxlTmFtZXMgPSBy
ZXN1bHQ7CisgICAgICAgIHNob3VsZEJlKCJoYW5kbGVOYW1lcy5sZW5ndGgiLCAiMiIpOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVzWzBdIiwgImRpciIpOworICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVzWzFdIiwgImZpbGUiKTsKKyAg
ICAgICAgcmVtb3ZlRW50cnkoZGlySGFuZGxlLCAiZmlsZSIpOworICAgIH0pLmNhdGNoKChlcnJv
cikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rp
b24gcmVtb3ZlRW50cnkoZnJvbUhhbmRsZSwgbmFtZSkgeworICAgIGZyb21IYW5kbGUucmVtb3Zl
RW50cnkobmFtZSkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIC8vIE5vIGVycm9yIG1lYW5z
IGl0IGlzIHJlbW92ZWQuCisgICAgICAgIGNyZWF0ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCBmYWxz
ZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3Ip
OworICAgIH0pOworfQorCitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICBqc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKKyAgICBnZXREaXJlY3RvcnkoKTsKK30gZWxzZSB7CisgICAgZmluaXNoVGVz
dCgid2luZG93LnRlc3RSdW5uZXIgaXMgbm90IGF2YWlsYWJsZSIpOworfQorPC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438957</attachid>
            <date>2021-09-22 09:43:35 -0700</date>
            <delta_ts>2021-09-22 09:45:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210922094334.patch</filename>
            <type>text/plain</type>
            <size>186740</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjQ0NjQ1YjJmMWM4ZmYyNjBjZmU4ODQwMzYwOTY2
MmJlZTQwNTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTA5LTIyICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudGVkIEZpbGVTeXN0ZW1IYW5kbGUgYW5kIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgKGV4Y2VwdCBkaXJlY3RvcnkgaXRlcmF0aW9uKSBpbnRl
cmZhY2VzIGZvciBPcmlnaW4gCisgICAgICAgIFByaXZhdGUgRmlsZSBTeXN0ZW0uCisgICAgICAg
IFNwZWM6IGh0dHBzOi8vd2ljZy5naXRodWIuaW8vZmlsZS1zeXN0ZW0tYWNjZXNzLyNhcGktZmls
ZXN5c3RlbWhhbmRsZQorICAgICAgICAgICAgICBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUt
c3lzdGVtLWFjY2Vzcy8jYXBpLWZpbGVzeXN0ZW1kaXJlY3RvcnloYW5kbGUKKyAgICAgICAgICAg
ICAgaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3NhbmRib3hlZC1m
aWxlc3lzdGVtCisKKyAgICAgICAgVGVzdDogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVj
dG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZTo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViQ29yZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaDoKKyAgICAgICAgKGlz
VHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1G
aWxlSGFuZGxlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaDoKKyAgICAgICAgKGlzVHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSk6IERlbGV0ZWQuCisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OmltcGwgY29uc3QpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlSW1wbDo6fkZpbGVTeXN0ZW1IYW5kbGVJbXBsKToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaDoKKyAgICAgICAgKiBNb2R1
bGVzL3N0b3JhZ2UvU3RvcmFnZUNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL3N0b3Jh
Z2UvU3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6
OmNvbm5lY3Rpb25JbmZvKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkpOgorICAgICAgICAqIE1vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAoV2ViQ29yZTo6dG9K
U05ld2x5Q3JlYXRlZCk6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0
TG9hZGVyLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaDoK
KwogMjAyMS0wOS0yMCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbQ29jb2FdIE1ha2UgQVZTYW1wbGVCdWZmZXJWaWRlb091dHB1dCBzdXBwb3J0IGFuIEV4cGVy
aW1lbnRhbCBGZWF0dXJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGIxYjlkZWI2YjVhNWFkMWY5MjMyZWU1MGE1M2Q3
NzQwNzFmNTU0N2IuLmJhOWZmNGE3NDQ3NjY0YTJjOGEwNmE0ZTNhODY0ZTk1MGY3ZDkxZTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsODggQEAKKzIwMjEtMDktMjIgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0
ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSW50cm9kdWNlIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciB0byBtYW5hZ2UgZmlsZSBo
YW5kbGVzLiBFYWNoIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIGNvcnJlc3BvbmRzIHRvIGEgCisg
ICAgICAgIEZpbGVTeXN0ZW1IYW5kbGUgaW4gd2ViIHByb2Nlc3MuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQ
cm9jZXNzOjpyZW1vdmVTdG9yYWdlTWFuYWdlckZvclNlc3Npb24pOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6Y29udmVydFRvRXhjZXB0aW9uQ29kZSk6CisgICAgICAgICogTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA6IEFkZGVkLgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNTYW1lRW50
cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENy
ZWF0ZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpn
ZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OmdldERpcmVjdG9yeUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6aWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpwYXRoIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6Z2V0SGFuZGxlKToKKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0UGF0aCk6CisgICAg
ICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3NlZCk6
CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlci5oOiBBZGRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjp+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbG9zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJv
bUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpjb25u
ZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0
b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok9y
aWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNs
b3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVj
a2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VN
YW5hZ2VyLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAg
ICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTb3Vy
Y2VzLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRE
aXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OnJlc29sdmUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmdldFBlcnNpc3RlZCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdGVkKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisK
IDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRlU2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2
aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2
Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAyZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdl
ZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BS
SVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxl
U3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1
MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEyZTEuLjNhMGNhZTg5YmRlZTUxMTBmZDQ5MTVjYmE4
ZTRjMWE1OWU3NTEzOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5j
cHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJ
bXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQor
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJp
bmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVT
eXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJ
bnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxl
Pj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBv
cnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdl
dEZpbGVIYW5kbGUobmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFtuYW1lLCBwcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3Vs
dC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShGaWxlU3lz
dGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1
cm5WYWx1ZSgpKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkK
K3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0
IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpH
ZXREaXJlY3RvcnlPcHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJm
YWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5j
cmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0RGlyZWN0b3J5SGFuZGxlKG5hbWUsIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbbmFtZSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVz
dWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsK
KworICAgICAgICBwcm9taXNlLnJlc29sdmUoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3Jl
YXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKSk7CisgICAg
fSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29u
c3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1v
dmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlzZSkKK3ZvaWQgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBz
dGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9w
dGlvbnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBkZWxldGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5y
ZWN1cnNpdmUgOiBmYWxzZTsKKyAgICBpbXBsKCkucmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVj
dXJzaXZlbHksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwog
fQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+
PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29u
c3QgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2Vw
dGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGlt
cGwoKS5yZXNvbHZlKGhhbmRsZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
YXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0
aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZh
bHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRl
ZDQ4Yzk0N2Y0MzQ1MDJiLi45MmExMmI0NzBjZTkxMGRmZGVjZDE4ZTkxZmY4ZTEzNWJmNDlkNmJh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAot
Y2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxl
IHsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKTsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYs
MTQgKzQ2LDE4IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9Owog
ICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
Jik7CiAgICAgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRp
b25hbDxHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8Rmls
ZVN5c3RlbUZpbGVIYW5kbGU+PiYmKTsKICAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25z
dCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYp
OwogICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFs
PFJlbW92ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CiAgICAgdm9pZCBy
ZXNvbHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2Vx
dWVuY2U8SURMVVNWU3RyaW5nPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25z
dCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5k
KCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVD
SUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcApp
bmRleCA5ZWRjMjA0ZTE3ZWUxMzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZm
NjNlNTcwMzljNmU5NDYyN2VhMjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUlt
cGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7
CiAKLVJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0
ZShTdHJpbmcmJiBuYW1lKQorUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmls
ZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
JiBpbXBsKQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFdURk1vdmUobmFtZSkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1G
aWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmls
ZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUp
KQorRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhh
bmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3Zl
KGltcGwpKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUz
OGI4YTUwNDgwZjNlMzIyNzlkYzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3
YWU2ZDFhMWU5MjcyZGQzMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwx
MSArMzQsMTUgQEAgY2xhc3MgRmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFs
IDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
RmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3Rl
bUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3Rl
bUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGU+PiYmKTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVt
RmlsZUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZp
bGVIYW5kbGUpCisgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0
ZW1IYW5kbGUmIGhhbmRsZSkgeyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFj
MjExMmI2MDg1MGZiZi4uNGFmNjExMDhiMTcxZjI2N2E0OTJmYjZlNTUwMjA0NmE2MmNkMTQwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUp
OwogCi1GaWxlU3lzdGVtSGFuZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9u
YW1lKFdURk1vdmUobmFtZSkpCisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAot
dm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxl
JiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1I
YW5kbGU6On5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1I
YW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkgY29uc3QKIHsKLSAgICBwcm9taXNlLnJlamVj
dChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsK
KyAgICBpZiAobV9raW5kICE9IGhhbmRsZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1l
KCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBs
LT5pc1NhbWVFbnRyeShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSld
KGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShy
ZXN1bHQpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4u
ZTVjZjcwMjNhNjk1OWQ2OGQzOTU0MWYwNjcwNzZlZDczYmY2ZmVhNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZS5oCkBAIC0zMSwyOSArMzEsMzIgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3Rl
bUhhbmRsZUltcGw7CiBlbnVtIGNsYXNzIFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNs
YXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxl
PiB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1Ymxp
YzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtp
bmQgOiB1aW50OF90IHsKICAgICAgICAgRmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsK
LQotICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5k
IGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUo
KSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1w
bCgpIGNvbnN0IHsgcmV0dXJuIG1faW1wbC5nZXQoKTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRy
eShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VE
ZWZlcnJlZDxJRExCb29sZWFuPiYmKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAgIEZpbGVTeXN0
ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAgRmlsZVN5c3RlbUhhbmRsZShLaW5k
LCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogCiBwcml2YXRl
OgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9OwogICAgIFN0cmluZyBtX25hbWU7Cisg
ICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1h
Y2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5kZXggMjA4ZTc0NWNjM2JmYzRjNzk3
NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYzYzVjODc3ZGU2ODNkNmFhODE2ZGJl
YWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApAQCAtMjksNiArMjksNyBAQCBlbnVt
IEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAog
ICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVuYWJsZWRCeVNldHRpbmc9RmlsZVN5
c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNkOGRhNDIyN2NlMGNjN2YwYzFmMGIyNWQ4ZDZhMGEwNzA0MzBlZDYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworY2xhc3Mg
RmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9u
T3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDogcHVibGljIFJlZkNvdW50ZWQ8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFu
ZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gc3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGlzU2FtZUVudHJ5KEZp
bGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjxi
b29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0
cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJl
ZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJl
bW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNpdmUsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
RHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEwYzhiMzFmOTRiNjZhZjA4
Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3MzY3MDRjYjIyNTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92
aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQ
cm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7CiAgICAgICAgIH0KIAot
ICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgdm9pZCBnZXRQZXJzaXN0
ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJzaXN0KENsaWVudE9yaWdp
biYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
ICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisKKyAgICAgICAgdm9pZCBm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7CisgICAgICAgIH0KICAgICB9
OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0aW9uKCkgZmluYWwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgK
aW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3NTUzMy4uMGE0MDA3M2I0
ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTI1LDE4ICsyNSwyMiBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBsYXRlPHR5cGVuYW1lPiBj
bGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3RvcmFn
ZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewogcHVi
bGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwotICAgIHZp
cnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4m
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0KGNvbnN0IENsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRPcmlnaW4mLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRm
OTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLmRjZWY5ODIwOGNlY2EwZmNiMzA2
ZWZkYmU5ODI3YjIxZTdiZDNkOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9z
dG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAgQEAKICNpbmNsdWRlICJT
dG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2luLmgiCisjaW5jbHVkZSAi
RXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAj
aW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAi
U2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpAQCAt
NDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JC
YXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3RlZChE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQorc3RydWN0IFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rp
b247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkK
IHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
RXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3IgZG9lcyBub3QgZXhpc3Qi
X3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5h
dmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBjb250ZXh0ID0gbV9uYXZp
Z2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAoIWNvbnRleHQpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
IlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJfcyB9OwogCisgICAgYXV0
byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAgICBpZiAoIW9yaWdpbikK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlz
IGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9y
YWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rp
b24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAKLSAgICBhdXRvKiBvcmln
aW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICghb3JpZ2luKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJP
cmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVjdGlvbkluZm8geyAqY29u
bmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0g
fTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERPTVByb21pc2VEZWZlcnJl
ZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5l
Y3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKIAotICAgIHJldHVybiBj
b25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdp
bi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQp
IG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZ2V0UGVyc2lzdGVkKGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21pc2UucmVz
b2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCiB7Ci0gICAgaWYg
KCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7
IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH0pOworICAg
IGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25JbmZvKCk7CisgICAg
aWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VFeGNl
cHRpb24oKSk7CiAKLSAgICBhdXRvIGNvbnRleHQgPSBtX25hdmlnYXRvci0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOwotICAgIGlmICghY29udGV4dCkKLSAgICAgICAgcmV0dXJuIHByb21pc2Uu
cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbnRleHQgaXMgaW52
YWxpZCJfcyB9KTsKLQotICAgIGF1dG8gY29ubmVjdGlvbiA9IGNvbnRleHQtPnN0b3JhZ2VDb25u
ZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJUaGUgY29ubmVjdGlvbiBpcyBp
bnZhbGlkIl9zIH0pOwotCi0gICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKLSAgICBpZiAoIW9yaWdpbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4
Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfSk7Ci0K
LSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdCh7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRh
dGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29s
IHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgY29ubmVjdGlvbklu
Zm8uY29ubmVjdGlvbi5wZXJzaXN0KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBX
VEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21p
c2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2Vy
OjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRl
cmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICByZXR1
cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1w
bGVtZW50ZWQiX3MgfSk7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29u
bmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JF
eGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgIGF1dG8gY29ubmVjdGlvbkluZm8g
PSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNv
bm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9u
SW5mby5vcmlnaW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11
dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAg
ICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0p
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4
MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdl
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdl
ci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8
dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNs
YXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsK
ICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2
LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5h
dmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRp
b25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmln
YXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
U291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3
MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAy
N2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRp
bmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2
ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0
ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdz
L2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZm
NWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEw
ZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlG
IC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMw
QUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNE
QTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAx
M0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3Vw
aW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRB
MTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUg
LyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVh
UmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1p
c3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9
OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRl
eHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJ
CTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJC
MzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQz
RTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZF
OEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsK
LQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0
MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1
QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZF
OTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmls
ZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2
MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhh
bmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAw
N0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVj
aFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsg
fTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJu
YXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmgg
Ki87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBB
QSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1w
bGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIz
MDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3
RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0
ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlz
dGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAw
RTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJF
OTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAw
NTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJE
RTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJE
RDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJ
CQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5j
cHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1l
bnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxD
b2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJD
OUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMy
QzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJD
OUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMx
QTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJ
OTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nl
c3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdl
ckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJ
CQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmls
ZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8q
IEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEw
MEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1
RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVD
dXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2
NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Zp
bGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNp
bmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpK
U0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFw
KGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sK
KyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30K
KworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1
bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBl
MTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRl
ci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNj
cmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIK
ICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQy
MDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0Mjhm
Y2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGll
bnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1
ZDVjMjE2MGQ3NmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcApAQCAtNDYxLDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFk
ZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0
CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3Zl
KHNlc3Npb25JRCk7CisgICAgaWYgKGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRh
a2Uoc2Vzc2lvbklEKSkKKyAgICAgICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3
b3JrUHJvY2Vzczo6Zm9yRWFjaE5ldHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0
d29ya1Nlc3Npb24mKT4mIGZ1bmN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kZGZmZTIyYTllOGRjYzViODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaApAQCAtMCwwICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51
bVRyYWl0cy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yIDogdWludDhfdCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWRO
YW1lLAorICAgIEludmFsaWRNb2RpZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVu
a25vd24KK307CisKK2lubGluZSBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2Vw
dGlvbkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVy
cm9yKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6Cisg
ICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJv
cjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0
OgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOwor
ICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0
ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpGaWxlTm90Rm91bmQsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6SW52YWxpZE5hbWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
SW52YWxpZE1vZGlmaWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bgorICAgID47Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5YmQ4YTcyYWEyYzA1ZDQ4MTA2YWQ0ZmFk
M2UwMGY2YTU1NDIzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgi
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJL
aXQgeworCisjaWYgT1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAn
XFwnOworI2Vsc2UKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYK
KworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBT
dHJpbmcmJiBuYW1lKQorICAgIDogbV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcjo6Z2VuZXJhdGVUaHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdl
YWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3Zl
KHBhdGgpKQorICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3Bh
dGguaXNFbXB0eSgpKTsKKworICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjpt
YWtlQWxsRGlyZWN0b3JpZXMobV9wYXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVt
OjpmaWxlRXhpc3RzKG1fcGF0aCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbTo6b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Bl
bk1vZGU6OldyaXRlKTsKKyAgICAgICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7Cisg
ICAgfQorfQorCitib29sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBhdXRvIHBh
dGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0
eSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gbV9wYXRoID09IHBhdGg7
Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RDcmVhdGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uLCBUeXBlIHR5cGUsIFN0
cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgaWYgKG1fdHlwZSAh
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1
cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsK
KworICAgIGlmICghbV9tYW5hZ2VyKQorICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0
aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFsaWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUg
PT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1lLmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQor
ICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52
YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5n
Q29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgcmV0dXJuIG1fbWFuYWdlci0+Y3JlYXRlSGFu
ZGxlKGNvbm5lY3Rpb24sIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIFN0cmlu
ZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgcmV0dXJuIHJlcXVlc3RD
cmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZp
bGUsIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlv
bjo6VW5pcXVlSUQgY29ubmVjdGlvbiwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vz
c2FyeSkKK3sKKyAgICByZXR1cm4gcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVh
dGVJZk5lY2Vzc2FyeSk7Cit9CisKK3N0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRp
cmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaDsKKworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBv
bmVudChtX3BhdGgsIG5hbWUpOworICAgIGF1dG8gdHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBl
KHBhdGgpOworICAgIGlmICghdHlwZSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlR5cGVNaXNtYXRjaDsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBG
aWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpk
ZWxldGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxl
VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAg
ICAgICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAg
ICAgICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247Cisg
ICAgICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBh
dGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bjsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitFeHBlY3Rl
ZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gcGF0aCA9
IG1fbWFuYWdlci0+Z2V0UGF0aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkp
CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpV
bmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkpCisgICAgICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPiB7IH07CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5zdWJz
dHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICByZXR1cm4gcmVzdFBhdGguc3BsaXQocGF0aFNl
cGFyYXRvcik7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iMjE5OGRhMjExYjgxZTIzNDI4ODE1Y2FlNGE1MjhmZjdjYWY1
NGE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQ
dHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4g
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3Mg
VHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJp
bmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgY29uc3QgU3RyaW5n
JiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICBib29sIGlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBnZXRG
aWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnkpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkpOworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVtb3Zl
RW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5KTsKKyAgICBF
eHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzb2x2ZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBUeXBl
LCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKKworICAgIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBT
dHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
clR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2Jq
ZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRh
MDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hh
bmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlm
aWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRl
bnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6Omdl
dEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sK
KyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAg
ICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2NjN2YwZjI4ODAyMzI1MDdi
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCwwICsxLDQ5IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8d3RmL1dl
YWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1
bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5k
bGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNiOWJhMTA5MWRjNDc4ODUzNTg5NWQ0Y2NmYTNhMzM2
MmRhYTdiNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0wLDAgKzEsMTA3IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVn
aXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcigpCit7
CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBmb3IgKGF1dG8gaWRlbnRp
ZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3Rlckhh
bmRsZShpZGVudGlmaWVyKTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBtYWtl
VW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8g
ZmlsZUV4aXN0cyA9IEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVh
dGVJZk5lY2Vzc2FyeSAmJiAhZmlsZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVj
dGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmls
ZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpm
aWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYgKCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAg
ICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24p
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBl
TWlzbWF0Y2gpOworICAgIH0KKworICAgIGF1dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZT4oKnRoaXMsIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUo
bmFtZSkpOworICAgIGF1dG8gbmV3SGFuZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRp
ZmllcigpOworICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbiwgWyZd
IHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3ItPnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVy
KTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVySGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpu
ZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5hZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92
ZShuZXdIYW5kbGUpKTsKKyAgICByZXR1cm4gbmV3SGFuZGxlSWRlbnRpZmllcjsKK30KKworY29u
c3QgU3RyaW5nJiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBt
X2hhbmRsZXMuZmluZChpZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxl
cy5lbmQoKSA/IGVtcHR5U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVj
dGlvbjo6VW5pcXVlSUQgY29ubmVjdGlvbikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFp
bigpKTsKKworICAgIGF1dG8gaGFuZGxlcyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNv
bm5lY3Rpb24pOworICAgIGlmIChoYW5kbGVzID09IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChhdXRvIGhhbmRsZUlkZW50aWZpZXIgOiBo
YW5kbGVzLT52YWx1ZSkgeworICAgICAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy50YWtlKGhh
bmRsZUlkZW50aWZpZXIpOworICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaGFu
ZGxlSWRlbnRpZmllcik7CisgICAgfQorICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUo
aGFuZGxlcyk7Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uKQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgcmV0dXJuIGNyZWF0ZUhhbmRsZShjb25u
ZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBTdHJpbmcg
eyBtX3BhdGggfSwgeyB9LCB0cnVlKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzdlM2U4OTE0ZTVjMDRhM2UxMzBj
MmNiYTk1Yzk3NDBkNDZjZTI0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApAQCAtMCwwICsx
LDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworCitjbGFzcyBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyPiB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkmKTsKKyAgICB+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCk7
CisKKyAgICBFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I+IGNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlE
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSwgU3RyaW5nJiYgcGF0aCwgU3RyaW5nJiYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSk7CisgICAgY29uc3QgU3RyaW5nJiBnZXRQYXRo
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgdm9pZCBjb25uZWN0aW9u
Q2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGly
ZWN0b3J5KElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworCitwcml2YXRlOgorICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9yZWdpc3Ry
eTsKKyAgICBIYXNoTWFwPElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIEhhc2hTZXQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPj4gbV9oYW5kbGVzQnlDb25uZWN0aW9uOworICAg
IEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+PiBtX2hhbmRsZXM7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggMzYyYWZiODg1MmFm
ZjQ4MDk5ZTA5Y2Y1NWU3ZWM2NzM1ZTUzMzNjNy4uN2RiNDNjMjdlOTg3YzExNTUwNmY5ODJlYTY5
MDkzNTMwNDdmZmVhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2
LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlICJOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgi
CiAjaW5jbHVkZSA8cGFsL2NyeXB0by9DcnlwdG9EaWdlc3QuaD4KQEAgLTQ1LDYgKzQ3LDcgQEAg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBTdHIKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwog
CiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0
aGlzKSwgcGF0aCA9IHBhdGguaXNvbGF0ZWRDb3B5KCldKCkgbXV0YWJsZSB7CisgICAgICAgIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKTsKICAgICAgICAgbV9wYXRoID0gcGF0aDsKICAgICAgICAg
aWYgKCFtX3BhdGguaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBhdXRvIHNhbHRQYXRoID0gRmls
ZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgInNhbHQiKTsKQEAgLTUz
LDE4ICs1Niw1MiBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwogfQogCitOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKQoreworICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKG1fY2xvc2VkKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsb3NlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNN
YWluKCkpOworCisgICAgaWYgKG1fY2xvc2VkKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3Ig
KGF1dG8mIGNvbm5lY3Rpb24gOiBtX2Nvbm5lY3Rpb25zKQorICAgICAgICBjb25uZWN0aW9uLnJl
bW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworCisgICAgbV9jbG9zZWQgPSB0cnVlOworICAg
IG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfV0o
KSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5ID0g
bnVsbHB0cjsKKyAgICAgICAgbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOwor
ICAgICAgICBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsKKworICAgICAg
ICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3Rl
Y3RlZFRoaXMpXSB7IH0pOworICAgIH0pOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJiBj
b25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25u
ZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUuZ2V0KCksIHRoaXMpOwor
ICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2b2lkIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pKQorICAgICAgICBy
ZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihN
ZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOwor
ICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMg
fSwgY29ubmVjdGlvbiA9IGNvbm5lY3Rpb24udW5pcXVlSUQoKV0oKSB7CisgICAgICAgIGZvciAo
YXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJz
LnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25D
bG9zZWQoY29ubmVjdGlvbik7CisgICAgfSk7CiB9CiAKIHN0YXRpYyBTdHJpbmcgZW5jb2RlKGNv
bnN0IFN0cmluZyYgc3RyaW5nLCBGaWxlU3lzdGVtOjpTYWx0IHNhbHQpCkBAIC0xMTEsOSArMTQ4
LDcyIEBAIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6
OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0CiAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1
ZSk7CiB9CiAKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtR2V0RGlyZWN0
b3J5KElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBj
b21wbGV0aW9uSGFuZGxlcihsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKG9yaWdpbikuZmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyKCptX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkpLmdl
dERpcmVjdG9yeShjb25uZWN0aW9uLnVuaXF1ZUlEKCkpKTsKK30KKwordm9pZCBOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBpZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxl
ID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmll
cik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihm
YWxzZSk7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGUtPmlzU2FtZUVudHJ5KHRhcmdl
dElkZW50aWZpZXIpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmdldEZpbGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vz
c2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFu
ZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRp
Zmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7CisKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGUtPmdldEZpbGVIYW5kbGUoY29ubmVjdGlvbi51bmlx
dWVJRCgpLCBXVEZNb3ZlKG5hbWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSkpOworfQorCit2b2lkIE5l
dHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIoaGFu
ZGxlLT5nZXREaXJlY3RvcnlIYW5kbGUoY29ubmVjdGlvbi51bmlxdWVJRCgpLCBXVEZNb3ZlKG5h
bWUpLCBjcmVhdGVJZk5lY2Vzc2FyeSkpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6cmVtb3ZlRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRI
YW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGNv
bXBsZXRpb25IYW5kbGVyKGhhbmRsZS0+cmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVjdXJzaXZl
bHkpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlc29sdmUoRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4
cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBh
dXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxl
KGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikp
OworCisgICAgY29tcGxldGlvbkhhbmRsZXIoaGFuZGxlLT5yZXNvbHZlKHRhcmdldElkZW50aWZp
ZXIpKTsKK30KKwogdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRl
c3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewog
ICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKICAgICBtX3F1ZXVlLT5kaXNwYXRjaChb
dGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSgpIG11dGFibGUgewogICAgICAgICBtX2xvY2Fs
T3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CiAgICAgICAgIG1fc2Vzc2lvbk9yaWdpblN0
b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCmluZGV4IGY2ZGFl
ZDEzZjI2NzUzNzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLmZhMGEwZWFlNzcyNTIwNTRiNjc1
N2Y1ODk4NDVjOGJlMGZjNDQ2NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTI2LDYg
KzI2LDggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1
ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgog
I2luY2x1ZGUgPFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25J
RC5oPgpAQCAtMzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2luOwogCiBuYW1lc3BhY2Ug
V2ViS2l0IHsKIAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDogcHVibGljIElQQzo6Q29u
bmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdlTWFuYWdlciBmaW5hbCA6
IHB1YmxpYyBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlciB7CiBwdWJs
aWM6CiAgICAgc3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+IGNyZWF0ZShQQUw6OlNl
c3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDQsMjUgKzQ4LDM2IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25u
ZWN0aW9uJik7CiAKICAgICBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVy
biBtX3Nlc3Npb25JRDsgfQorICAgIHZvaWQgY2xvc2UoKTsKICAgICB2b2lkIGNsZWFyU3RvcmFn
ZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKICAg
ICBOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgcGF0
aCk7CisgICAgfk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwogICAgIE9yaWdpblN0b3JhZ2VNYW5h
Z2VyJiBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biYpOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIgKGltcGxlbWVudGVkIGJ5IGdlbmVy
YXRlZCBjb2RlKQogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwg
SVBDOjpEZWNvZGVyJik7CiAKLSAgICAvLyBNZXNzYWdlIEhhbmRsZXJzCisgICAgLy8gTWVzc2Fn
ZSBoYW5kbGVycwogICAgIHZvaWQgcGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogICAgIHZvaWQgcGVyc2lzdChj
b25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wp
PiYmKTsKKyAgICB2b2lkIGZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiwg
Y29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBl
Y3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I+KT4mJik7CisgICAgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBnZXRGaWxlSGFuZGxlKElQQzo6Q29u
bmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgU3RyaW5nJiYgbmFt
ZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3Rl
ZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3I+KT4mJik7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsK
KyAgICB2b2lkIHJlbW92ZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAg
ICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0
ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CiAKICAgICBQ
QUw6OlNlc3Npb25JRCBtX3Nlc3Npb25JRDsKICAgICBSZWY8V29ya1F1ZXVlPiBtX3F1ZXVlOwog
ICAgIFN0cmluZyBtX3BhdGg7CiAgICAgRmlsZVN5c3RlbTo6U2FsdCBtX3NhbHQ7CisgICAgYm9v
bCBtX2Nsb3NlZCB7IGZhbHNlIH07CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4s
IHN0ZDo6dW5pcXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fbG9jYWxPcmlnaW5TdG9y
YWdlTWFuYWdlcnM7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIHN0ZDo6dW5p
cXVlX3B0cjxPcmlnaW5TdG9yYWdlTWFuYWdlcj4+IG1fc2Vzc2lvbk9yaWdpblN0b3JhZ2VNYW5h
Z2VyczsKKyAgICBXZWFrSGFzaFNldDxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbnM7IC8v
IE1haW4gdGhyZWFkIG9ubHkuCisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk+IG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVz
c2FnZXMuaW4KaW5kZXggZmVjMjcxZTBlOGRlODk4ZmYzOTkyNmNiODY0MGVhMTBmMTc5OTU1MC4u
YzZiNjk3OTU4OTczZjZhMGM4ZWFkNmVmM2Y5OTRhMTQxZTNiZmJjMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5t
ZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0yNiw0ICsyNiwxMCBAQAogIG1lc3Nh
Z2VzIC0+IE5ldHdvcmtTdG9yYWdlTWFuYWdlciB7CiAgICAgUGVyc2lzdGVkKHN0cnVjdCBXZWJD
b3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCiAgICAg
UGVyc2lzdChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKGJvb2wgcGVy
c2lzdGVkKSBBc3luYworICAgIEZpbGVTeXN0ZW1HZXREaXJlY3Rvcnkoc3RydWN0IFdlYkNvcmU6
OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1
bHQpIEFzeW5jIFdhbnRzQ29ubmVjdGlvbgorICAgIElzU2FtZUVudHJ5KFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChib29sIHJlc3Vs
dCkgQXN5bmMKKyAgICBHZXRGaWxlSGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNz
YXJ5KSAtPiAoRXhwZWN0ZWQ8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nv
bm5lY3Rpb24KKyAgICBHZXREaXJlY3RvcnlIYW5kbGUoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nIG5hbWUsIGJvb2wgY3JlYXRlSWZO
ZWNlc3NhcnkpIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jIFdh
bnRzQ29ubmVjdGlvbgorICAgIFJlbW92ZUVudHJ5KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGRlbGV0ZVJlY3Vy
c2l2ZWx5KSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+
IHJlc3VsdCkgQXN5bmMKKyAgICBSZXNvbHZlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIpIC0+IChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwg
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1h
bmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0
b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCA3NWExYWVkMjQ5ZjkyODU5OTBmNjZjYTk2ODE3Mzc4OGVm
NDdkMDU0Li40ZjA2ZjQ1MjQ2NTY0NmQyMDExYmM3ZjUzYmJkYjI4MTE1OTNhYTQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1h
bmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9Pcmln
aW5TdG9yYWdlTWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2LDkgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJPcmlnaW5TdG9yYWdlTWFuYWdlci5oIgogCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5oIgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogZW51bSBjbGFzcyBPcmlnaW5TdG9y
YWdlTWFuYWdlcjo6U3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sIHsgQmVzdEVmZm9ydCwgUGVyc2lz
dGVudCB9OwpAQCAtMzgsMTIgKzQxLDM0IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX2lkZW50aWZp
ZXIoaWRlbnRpZmllcikKICAgICB7CiAgICAgfQorCiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbW9k
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbW9kZTsgfQogICAgIHZvaWQgc2V0TW9kZShTdG9yYWdlQnVj
a2V0TW9kZSBtb2RlKSB7IG1fbW9kZSA9IG1vZGU7IH0KKworICAgIHZvaWQgY29ubmVjdGlvbkNs
b3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24pCisgICAgeworICAgICAg
ICBpZiAobV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpCisgICAgICAgICAgICBtX2ZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlci0+Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKKyAgICB9CisK
KyAgICBTdHJpbmcgdHlwZVN0b3JhZ2VQYXRoKGNvbnN0IFN0cmluZyYgc3RvcmFnZUlkZW50aWZp
ZXIpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gbV9yb290UGF0aC5pc0VtcHR5KCkgPyBl
bXB0eVN0cmluZygpIDogRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcm9v
dFBhdGgsIHN0b3JhZ2VJZGVudGlmaWVyKTsKKyAgICB9CisKKyAgICBGaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXImIGZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5JiByZWdpc3RyeSkKKyAgICB7CisgICAgICAgIGlmICghbV9maWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIpCisgICAgICAgICAgICBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciA9IG1h
a2VVbmlxdWU8RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyPih0eXBlU3RvcmFnZVBhdGgoIkZpbGVT
eXN0ZW0iKSwgcmVnaXN0cnkpOworCisgICAgICAgIHJldHVybiAqbV9maWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXI7CisgICAgfQorCiBwcml2YXRlOgogICAgIFN0cmluZyBtX3Jvb3RQYXRoOwogICAg
IFN0cmluZyBtX2lkZW50aWZpZXI7CiAgICAgU3RvcmFnZUJ1Y2tldE1vZGUgbV9tb2RlIHsgU3Rv
cmFnZUJ1Y2tldE1vZGU6OkJlc3RFZmZvcnQgfTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8RmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyPiBtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKIH07CiAKIE9y
aWdpblN0b3JhZ2VNYW5hZ2VyOjpPcmlnaW5TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKQpA
QCAtNTMsMTQgKzc4LDI5IEBAIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpPcmlnaW5TdG9yYWdlTWFu
YWdlcihTdHJpbmcmJiBwYXRoKQogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6fk9yaWdpblN0b3Jh
Z2VNYW5hZ2VyKCkgPSBkZWZhdWx0OwogCi12b2lkIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0KCkKK3ZvaWQgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25DbG9zZWQoSVBDOjpD
b25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uKQoreworICAgIGlmIChtX2RlZmF1bHRCdWNr
ZXQpCisgICAgICAgIG1fZGVmYXVsdEJ1Y2tldC0+Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9u
KTsKK30KKworT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQmIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyOjpkZWZhdWx0QnVja2V0KCkKIHsKLSAgICBtX3BlcnNpc3RlZCA9IHRydWU7Ci0g
ICAgCiAgICAgaWYgKCFtX2RlZmF1bHRCdWNrZXQpCiAgICAgICAgIG1fZGVmYXVsdEJ1Y2tldCA9
IG1ha2VVbmlxdWU8U3RvcmFnZUJ1Y2tldD4obV9wYXRoLCAiZGVmYXVsdCJfcyk7CiAKLSAgICBt
X2RlZmF1bHRCdWNrZXQtPnNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGU6OlBlcnNpc3RlbnQpOwor
ICAgIHJldHVybiAqbV9kZWZhdWx0QnVja2V0OworfQorCit2b2lkIE9yaWdpblN0b3JhZ2VNYW5h
Z2VyOjpwZXJzaXN0KCkKK3sKKyAgICBtX3BlcnNpc3RlZCA9IHRydWU7CisgICAgZGVmYXVsdEJ1
Y2tldCgpLnNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGU6OlBlcnNpc3RlbnQpOworfQorCitGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXImIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpmaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCit7
CisgICAgcmV0dXJuIGRlZmF1bHRCdWNrZXQoKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIocmVn
aXN0cnkpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgK
aW5kZXggOWU0MjE1YjNjNzAwYmQ0OTlkMDZlM2I5MDRjMTRlZmQ2NTI4OWYzMC4uN2QxMTY1NWE3
ZDRkOTIwZWRkMGE5ZjNmZmFmMzJmOTIwZDEzNmI4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgKKysrIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmgK
QEAgLTI1LDIyICsyNSwyOSBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmlu
Zy5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeTsKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKKwogY2xhc3MgT3Jp
Z2luU3RvcmFnZU1hbmFnZXIgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGlj
OgogICAgIGV4cGxpY2l0IE9yaWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpOwogICAg
IH5PcmlnaW5TdG9yYWdlTWFuYWdlcigpOwogCisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQ
Qzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOwogICAgIGJvb2wgcGVyc2lzdGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9wZXJzaXN0ZWQ7IH0KICAgICB2b2lkIHBlcnNpc3QoKTsKKyAgICBGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXImIGZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5Jik7CiAKIHByaXZhdGU6CiAgICAgZW51bSBjbGFzcyBTdG9yYWdlQnVj
a2V0TW9kZSA6IGJvb2w7CiAgICAgY2xhc3MgU3RvcmFnZUJ1Y2tldDsKKyAgICBTdG9yYWdlQnVj
a2V0JiBkZWZhdWx0QnVja2V0KCk7CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8U3RvcmFnZUJ1Y2tl
dD4gbV9kZWZhdWx0QnVja2V0OwogICAgIFN0cmluZyBtX3BhdGg7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCBlNWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3
OWRlZWJmNzJiMTViLi4zZjkzNmQyNTI5MDJlNTI0NzhlYjgxMTA5YmUyNjhkYTA5NWU1YjhjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBi
L1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTMxNiw2ICszMTYs
OCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAg
ICAnV2ViS2l0OjpDb250ZW50V29ybGRJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6RGlz
cGxheUxpbmtPYnNlcnZlcklEJywKICAgICAgICAgJ1dlYktpdDo6RG93bmxvYWRJRCcsCisgICAg
ICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3InLAorICAgICAgICAnV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpGb3Jt
U3VibWl0TGlzdGVuZXJJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R2VvbG9jYXRpb25J
ZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6R3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVy
JywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0
L1NvdXJjZXMudHh0CmluZGV4IDkzZGJhNmNkOTYwYjA4OTFiMmJkZjQ5ZmU1ZmUwMDU3NTg0YmE0
NjIuLmQ5ZTJlOGZmZWVjNmM4Yjk1Y2ZkMTM5YTBmMGZhZjBjOTU0ZTNkNzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4
dApAQCAtMTE1LDYgKzExNSw5IEBAIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dP
cmlnaW5TdG9yZS5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNl
V29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgQG5vLXVuaWZ5CiAKK05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcAorTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAKK05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAKIE5ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcAogTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKIApAQCAtNjkyLDYgKzY5NSw3IEBAIFdl
YlByb2Nlc3MvVXNlckNvbnRlbnQvV2ViVXNlckNvbnRlbnRDb250cm9sbGVyLmNwcAogV2ViUHJv
Y2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9XZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwCiBX
ZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhuUHJvY2Vzc0Nvbm5lY3Rpb24uY3Bw
CiAKK1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94
eS5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5j
cHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvU2hhcmVhYmxlQml0bWFwVXRpbGl0aWVzLmNw
cAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnku
Y3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAxOTFmNzZiMzg5NGU5MTdjNTI3YzRmOTM4ZmVlZDg2M2M3NzAxYzY5Li40MmJlY2E5ZDhm
NGYwNzY2ZmVkYmIyOTEzMjcxMTRmNmJlNmE0MGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE0NjksNiArMTQ2OSw5IEBACiAJCTkz
MDg1RERGMjZFNUJDRjEwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlc1Jl
cGxpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlc1Jl
cGxpZXMuaCAqLzsgfTsKIAkJOTMwODVERTAyNkU1QkNGRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9y
YWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMwODVEQzQyNkUxQkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICov
OyB9OwogCQk5MzA4NURFMTI2RTVCRDEzMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdl
cy5oICovOyB9OworCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgg
Ki87IH07CisJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMx
QTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggKi87IH07
CisJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMUJFMDI2
Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovOyB9OwogCQk5MzIx
RDU4NjFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIxRDU4NTFBMzhF
RTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmggKi87IH07CiAJCTkz
MjFENThBMUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIxRDU4OTFBMzhGMTk2
MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMjM2MTFFMUIwMTVEQTgwMEZBOTIzMiAv
KiBfV0tPdmVybGF5U2Nyb2xsYmFyU3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjM2MTFEMUIwMTVEQTgwMEZBOTIzMiAvKiBfV0tPdmVybGF5
U2Nyb2xsYmFyU3R5bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwpAQCAtMTQ4NSw2ICsxNDg4LDcgQEAKIAkJOTM1NkYyREYyMTUyQjcyMzAwRTZENURG
IC8qIFdlYlNXT3JpZ2luU3RvcmUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTNCQTA0REYyMTUxQURGNDAwN0Y0NTVGIC8qIFdlYlNXT3JpZ2luU3Rv
cmUuY3BwICovOyB9OwogCQk5MzU2RjJFMDIxNTJCNzUyMDBFNkQ1REYgLyogV2ViU1dTZXJ2ZXJU
b0NvbnRleHRDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzQkEwNEREMjE1MUFERjMwMDdGNDU1RiAvKiBXZWJTV1NlcnZlclRvQ29u
dGV4dENvbm5lY3Rpb24uY3BwICovOyB9OwogCQk5MzU2RjJFMTIxNTJCNzY2MDBFNkQ1REYgLyog
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzQkEwNEUxMjE1MUFERjQwMDdGNDU1RiAvKiBXZWJTV1NlcnZlckNv
bm5lY3Rpb24uY3BwICovOyB9OworCQk5MzVCNTc5QTI2RjUxOTMzMDA4QjQ4QUMgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLzsgfTsKIAkJOTM1RUVCOUIxMjc3NjE3QzAwMzMyMkI4
IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTgxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTkzNUVFQjlGMTI3NzYxQUMwMDMzMjJCOCAvKiBXS0J1bmRsZUJh
Y2tGb3J3YXJkTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM2
OEVFREUyMzAzQTkwMjAwQkRCMTFBIC8qIFN0b3JhZ2VNYW5hZ2VyU2V0TWVzc2FnZVJlY2VpdmVy
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNjhF
RURDMjMwM0E4RDgwMEJEQjExQSAvKiBTdG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5j
cHAgKi87IH07CkBAIC00OTA0LDYgKzQ5MDgsMTQgQEAKIAkJOTMwODVEQ0MyNkUyRTkwMjAwMEVD
NkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdl
UmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzA4NURDRDI2RTJF
OTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0UyNkUyRTkwMjAwMEVDNkE3IC8q
IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlc1JlcGxpZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MjI2
RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMx
QTA3NTkyNkYxQjk2NzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzVBMjZG
MUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8q
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk5MzIxRDU4NTFBMzhFRTNDMDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uQ29u
dHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIxRDU4NzFBMzhFRTc0
MDA4MDUyQkUgLyogV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzIxRDU4OTFBMzhGMTk2MDA4MDUyQkUg
LyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC00OTE4LDYgKzQ5MzAsOCBAQAogCQk5MzQyNTg4RjI1NTVEQ0E1MDA1OUVFREQgLyogTWVk
aWFQZXJtaXNzaW9uVXRpbGl0aWVzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWVkaWFQZXJt
aXNzaW9uVXRpbGl0aWVzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzQyNTg5
ODI1NUI1MzRCMDA1OUVFREQgLyogTWVkaWFQZXJtaXNzaW9uVXRpbGl0aWVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzRCNzI0MzE5RjVCOUJFMDBBRTk2RDYgLyogV0tB
Y3Rpb25NZW51SXRlbVR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdL
QWN0aW9uTWVudUl0ZW1UeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzVC
NTc5ODI2RjUxMjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUI1Nzk5MjZGNTE5
MkYwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NTEyNzc2MTZE
MDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5k
bGVCYWNrRm9yd2FyZExpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tC
dW5kbGVCYWNrRm9yd2FyZExpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1
RUVCOTcxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdEl0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtOTY5MSw2ICs5NzA1
LDE0IEBACiAJCTkzMDg1REMyMjZFMUJCNjUwMDBFQzZBNyAvKiBzdG9yYWdlICovID0gewogCQkJ
aXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQk5MzFBMUJFMDI2Rjg1QzMyMDA4
MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovLAorCQkJCTkzMUEwNzUyMjZGMDZB
QjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAgKi8sCisJCQkJOTMxQTA3
NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggKi8sCisJCQkJ
OTMxQTA3NTcyNkYxMjVBMzAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllci5oICovLAorCQkJCTkzNUI1Nzk5MjZGNTE5MkYwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcCAqLywKKwkJCQk5MzVCNTc5ODI2RjUxMjcwMDA4QjQ4QUMg
LyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovLAorCQkJCTkzMUEwNzUxMjZG
MDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovLAorCQkJCTkz
MUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLywK
IAkJCQk5MzA4NURDMzI2RTFCQkJEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNw
cCAqLywKIAkJCQk5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmggKi8sCiAJCQkJOTMwODVEQzcyNkUxQzZFRTAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdl
TWFuYWdlci5tZXNzYWdlcy5pbiAqLywKQEAgLTEwMDA2LDYgKzEwMDI4LDggQEAKIAkJCQlDRDYx
NzgxMTFFNkRFOTgwMDBGREE1N0QgLyogY29jb2EgKi8sCiAJCQkJMkQyOEYzREYxODg1Q0NCNDAw
NEI5RUFFIC8qIGlvcyAqLywKIAkJCQlCQzExMUFERTExMkY1QjlBMDAzMzdCQUIgLyogbWFjICov
LAorCQkJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5LmNwcCAqLywKKwkJCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eS5oICovLAogCQkJCTFBNzI4NDQ0MTk1OUVEMTAwMDA3QkNFNSAv
KiBTZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcCAqLywKIAkJCQkxQTcyODQ0NTE5NTlFRDEwMDAw
N0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5oICovLAogCQkJCUY0M0E5Q0RFMjVENzJF
MkQwMDk5MEUyNiAvKiBTaGFyZWFibGVCaXRtYXBVdGlsaXRpZXMuY3BwICovLApAQCAtMTIxNzgs
NiArMTIyMDIsMTAgQEAKIAkJCQkxQUE1NzVGQjE0OTZCNTI2MDBBNEVFMDYgLyogRXZlbnREaXNw
YXRjaGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzJFQkJENzI1MzdFQkFFMDAwNTUyQjMgLyog
RXh0cmFQcml2YXRlU3ltYm9sc0ZvclRBUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3QjgyNjQ4
MjMwNTBDNTEwMEI3MkVCMCAvKiBGaWRvU2VydmljZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMx
QTFCRTIyNkY4NzAwOTAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzMTJCQUQ2MjZGMzNDMjkwMEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
MTJCQUQ1MjZGMzNDMjYwMEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTAwQjk2NjFBMThFMjVBRTEwMENFMUY4OCAvKiBGaW5kQ2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQkxQTkwQzFGNDEyNjRGRDcxMDAzRTQ0RDQgLyogRmluZENvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1OUM0QTU5MThCODExNzQwMDdCRENCNiAvKiBG
b2N1c2VkRWxlbWVudEluZm9ybWF0aW9uLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYWMwY2FjN2Q0Y2Nk
NGZhZDlmMzJjMDBmZGY5ZDBmNTk5NDc3MzBjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuY3BwCkBAIC0wLDAgKzEsMTM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCIKKworI2luY2x1ZGUg
IkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZU1hbmFn
ZXJNZXNzYWdlcy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRXhjZXB0aW9uT3IuaD4KKyNpbmNsdWRl
IDxXZWJDb3JlL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitSZWY8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eT4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
Y3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6
OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShpZGVudGlmaWVyLCBjb25uZWN0aW9uKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29u
bmVjdGlvbiYgY29ubmVjdGlvbikKKyAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVyKQorICAg
ICwgbV9jb25uZWN0aW9uKCZjb25uZWN0aW9uKQoreworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQoKQoreworICAgIG1fY29ubmVjdGlvbiA9
IG51bGxwdHI7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6aXNTYW1l
RW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24g
aXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBpZiAobV9pZGVudGlmaWVyLnRvVUludDY0KCkg
PT0gKmlkZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsK
KworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OklzU2FtZUVudHJ5KG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50
aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIp
KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGJvb2wg
cmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIocmVzdWx0KTsKKyAg
ICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRGaWxlSGFu
ZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3Rl
bUhhbmRsZUltcGw+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29u
bmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2Vw
dGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisK
KyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0
b3JhZ2VNYW5hZ2VyOjpHZXRGaWxlSGFuZGxlKG1faWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZO
ZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFJlZiB7ICp0aGlzIH0sIG5hbWUsIGNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29k
ZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAgIGlmICghbV9jb25uZWN0aW9uKQor
ICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAg
ICAgICBSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw+IGltcGwgPSBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUocmVzdWx0LnZhbHVlKCksICptX2Nvbm5lY3Rpb24p
OworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGltcGwpKTsKKyAgICB9KTsKK30K
Kwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUo
Y29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0
aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9u
IHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAg
IG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OkdldERpcmVjdG9yeUhhbmRsZShtX2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlm
TmVjZXNzYXJ5KSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9LCBuYW1lLCBj
b21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHJlc3Vs
dCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNv
ZGUocmVzdWx0LmVycm9yKCkpIH0pOworICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikK
KyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24g
eyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAg
ICAgICAgUmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBpbXBsID0gRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1ZSgpLCAqbV9jb25uZWN0aW9u
KTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShpbXBsKSk7CisgICAgfSk7Cit9
CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6cmVtb3ZlRW50cnkoY29uc3Qg
U3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlv
biBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1l
c3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlJlbW92ZUVudHJ5KG1faWRlbnRpZmllciwg
bmFtZSwgZGVsZXRlUmVjdXJzaXZlbHkpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKV0oYXV0byBlcnJvcikgbXV0YWJsZSB7CisgICAgICAgIGlmIChlcnJv
cikKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRp
b24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKGVycm9yLnZhbHVlKCkpIH0pOworCisgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eTo6cmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFuZGxlLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+
PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNv
cmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBhdXRvIGlk
ZW50aWZpZXIgPSBoYW5kbGUuc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKTsKKyAgICBpZiAoIWlk
ZW50aWZpZXIpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihWZWN0b3I8U3RyaW5n
PiB7IH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVzb2x2ZShtX2lkZW50aWZpZXIsIG1ha2VPYmplY3RJ
ZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllclR5cGU+KCppZGVudGlm
aWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShh
dXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4
Y2VwdGlvbkNvZGUocmVzdWx0LmVycm9yKCkpIH0pOworCisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKFdURk1vdmUocmVzdWx0LnZhbHVlKCkpKTsKKyAgICB9KTsKK30KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmNhY2MwZmJlNWNmNmVhZjdlNWEzZTUyNGNiOTQxODhiYTIyODU4MWYKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oCkBAIC0wLDAgKzEsNjMgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUhhbmRsZUltcGwuaD4KKworbmFt
ZXNwYWNlIElQQyB7CitjbGFzcyBDb25uZWN0aW9uOworfQorCituYW1lc3BhY2UgV2ViQ29yZSB7
Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit9CisKK25hbWVz
cGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5IGZpbmFs
IDogcHVibGljIFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsIHsKK3B1YmxpYzoKKyAgICBz
dGF0aWMgUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+IGNyZWF0ZShGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworICAgIHZvaWQgY29u
bmVjdGlvbkNsb3NlZCgpOworCitwcml2YXRlOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24m
KTsKKworICAgIC8vIEZpbGVTeXN0ZW1IYW5kbGVJbXBsCisgICAgc3RkOjpvcHRpb25hbDx1aW50
NjRfdD4gc3RvcmFnZUhhbmRsZUlkZW50aWZpZXIoKSB7IHJldHVybiBtX2lkZW50aWZpZXIudG9V
SW50NjQoKTsgfQorICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmKSBm
aW5hbDsKKyAgICB2b2lkIGdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlv
bk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmKSBmaW5hbDsKKyAg
ICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYpIGZpbmFsOworICAgIHZv
aWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+JiYpPiYm
KSBmaW5hbDsKKyAgICB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJpbmc+PiYmKT4m
JikgZmluYWw7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVu
dGlmaWVyOworICAgIFJlZlB0cjxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvbjsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKaW5k
ZXggODg5NTA4YWE2YzczMzIxYzQzM2RiNTdkOTExNzNlNzA0Njg3ZTQxYS4uOTFhYmFlYzg5MjZk
NzM4NWZjNjE1OTFjOTUyOWYwYWFjNzUyNTgxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rp
b24uY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
V2ViU3RvcmFnZUNvbm5lY3Rpb24uaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUHJveHkuaCIKICNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKICNpbmNs
dWRlICJOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nl
c3MuaCIKQEAgLTM4LDE2ICszOSwzMSBAQCBSZWY8V2ViU3RvcmFnZUNvbm5lY3Rpb24+IFdlYlN0
b3JhZ2VDb25uZWN0aW9uOjpjcmVhdGUoKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdlYlN0
b3JhZ2VDb25uZWN0aW9uKTsKIH0KIAotdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lz
dGVkKFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246
OmdldFBlcnNpc3RlZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBjb25u
ZWN0aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OlBlcnNpc3RlZChvcmlnaW4pLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAK
LXZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2lu
JiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQordm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdChjb25zdCBXZWJDb3JlOjpD
bGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKIHsKICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1l
c3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OlBlcnNpc3Qob3JpZ2luKSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOwogfQogCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpmaWxl
U3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdv
cmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKKyAgICBjb25uZWN0aW9uLnNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVt
R2V0RGlyZWN0b3J5KG9yaWdpbiksIFt3ZWFrQ29ubmVjdGlvbiA9IG1ha2VXZWFrUHRyKGNvbm5l
Y3Rpb24pLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShh
dXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4
Y2VwdGlvbkNvZGUocmVzdWx0LmVycm9yKCkpIH0pOworCisgICAgICAgIGlmICghd2Vha0Nvbm5l
Y3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhj
ZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0p
OworCisgICAgICAgIGF1dG8gaW1wbCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNy
ZWF0ZShyZXN1bHQudmFsdWUoKSwgKndlYWtDb25uZWN0aW9uKTsKKyAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0
ZSh7IH0sIFdURk1vdmUoaW1wbCkpKTsKKyAgICB9KTsKK30KKwogSVBDOjpDb25uZWN0aW9uJiBX
ZWJTdG9yYWdlQ29ubmVjdGlvbjo6Y29ubmVjdGlvbigpCiB7CiAgICAgcmV0dXJuIFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rp
b24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKaW5kZXggMWMwZTY2MzY5YjU2ZWRiNzBl
OTNhODg5ZTMyNTAzNTY2NjkzMzZlNS4uMGQ2YzAxYmE4MjFjYmM0NTQyN2VmNzZkNmI2YWViZWNk
MTY3YWI4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTMxLDYgKzMxLDExIEBA
IG5hbWVzcGFjZSBJUEMgewogY2xhc3MgQ29ubmVjdGlvbjsKIH0KIAorbmFtZXNwYWNlIFdlYkNv
cmUgewordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTsKK30KKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdl
YlN0b3JhZ2VDb25uZWN0aW9uIGZpbmFsIDogcHVibGljIFdlYkNvcmU6OlN0b3JhZ2VDb25uZWN0
aW9uIHsKQEAgLTM4LDggKzQzLDkgQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWY8V2ViU3RvcmFn
ZUNvbm5lY3Rpb24+IGNyZWF0ZSgpOwogCiBwcml2YXRlOgotICAgIHZvaWQgcGVyc2lzdGVkKFdl
YkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBm
aW5hbDsKLSAgICB2b2lkIHBlcnNpc3QoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0UGVyc2lzdGVkKGNv
bnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYpIGZpbmFsOworICAgIHZvaWQgcGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4m
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGZpbGVT
eXN0ZW1HZXREaXJlY3RvcnkoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZT4+JiYpPiYmKSBmaW5hbDsKIAogICAgIElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbigpOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjNTFhMWY4ZWQ3NjM0ZGRlMTkxYjQwYjk2YjUxZTMy
NWQwMzEwNTgyLi44Y2JhZGJkYmE0YmFmMmE1ZjA2MmVhNThkMDljODMyMmM1YWUxODYyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDktMjIgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBs
ZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNj
ZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRp
b25zOgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxl
LWJhc2ljcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvZmlsZXN5c3Rl
bWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sOiBBZGRlZC4KKwogMjAyMS0wOS0y
MCAgQXl1bWkgS29qaW1hICA8YXl1bWlfa29qaW1hQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdS
RVNTSU9OIChyMjgxMTAyPyk6IFsgTWFjIF0gbWVkaWEvdHJhY2svdHJhY2staW4tYmFuZC5odG1s
IGlzIGEgZmxha3kgdGltZW91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDM0
MzdhNWUxNDdkN2RkYTQwZDFiZTliY2M3MTA5YTI2ODA1YWUyYWMuLjNkODA3YmU0OTNlM2Q0MTE0
MjFiN2I2NGEyNjJmYTQ1NmMyMWY4MjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDMzIEBACisyMDIxLTA5LTIyICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUu
Y29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2Vz
cyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
MDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0
dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1l
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3Zl
RW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1j
cmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZl
LndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdy
aXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVh
bS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA5LTIwICBBZGl0eWEgS2VlcnRoaSAg
PGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgaW5wdXQtc2VjdXJpdHkK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCmluZGV4IGY1ZGNhY2QxZTJhMTczZWVkZmFiYzAxNjRiZGNmZjFjN2Vh
OWU0N2MuLmU0YjNkY2E0MjU1ZDMwZWM5YmFlODBiMjEwOGM1N2ZhNzEyNzZhNjMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4
cGVjdGF0aW9ucwpAQCAtMjAwLDYgKzIwMCw3IEBAIGZhc3Qvc3BlZWNocmVjb2duaXRpb24vaW9z
LyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8g
WyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBTa2lw
IF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBb
IFNraXAgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBbIFNraXAgXQogCiAjIGFwcC1wcml2
YWN5LXJlcG9ydCB0ZXN0cyByZWx5IG9uIFdlYktpdEFkZGl0aW9ucwogaHR0cC90ZXN0cy9hcHAt
cHJpdmFjeS1yZXBvcnQvIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2lu
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKaW5kZXggNjkwZDI3OTM0MmU2YThkOTQ5OTY5MWIxOWY1Y2Q5NjY0
YmI0MDA5Ni4uMWI0ZGM4YjZkYTgyNmQ1ZGYyM2U3ZmE4OTdmZDFlYTY3M2I0ZWQyZSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMiw1ICsy
LDUgQEAKIFBBU1Mgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgYmUgdW5kZWZpbmVkIGZvciBk
YXRhIFVSSSBpZnJhbWVzLgogUEFTUyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlIG11c3QgYmUg
dW5kZWZpbmVkIGZvciBkYXRhIFVSSSBpZnJhbWVzLgogRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5n
ZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEg
c2FuZGJveGVkIGlmcmFtZS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQ
aWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQ
aWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJyb3IiCi1GQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdl
dERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBz
YW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInNob3dEaXJl
Y3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5RXJyb3IiIGJ1dCBnb3QgIm5hdmlnYXRv
ci5zdG9yYWdlLmdldERpcmVjdG9yeSgpOiBSRUpFQ1RFRDogTm90U3VwcG9ydGVkRXJyb3IiCitG
QUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5UGlj
a2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgb3BlbmVkIHdpbmRvdy4gYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogUkVKRUNURUQ6IFNlY3VyaXR5
RXJyb3IiIGJ1dCBnb3QgInNob3dEaXJlY3RvcnlQaWNrZXIoKTogRVhDRVBUSU9OOiBUeXBlRXJy
b3IiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1J
bmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA0MTI0
YjdiZTRkY2RhYWQ0YWI5MzA3OWRiMmRjMGRlMWMzMjcyZWI0Li4yMTVhYjY2MGJkMDRiZWJlYjY1
NGY4MmYzNmVhMTMzN2UwYjAyYTc3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVk
REIgYW5kIHJlYWQgZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZy
b20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTdG9yZSBoYW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQg
dXNpbmcgYSBjdXJzb3IuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0
b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJl
YWQgZnJvbSBwZW5kaW5nIHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNh
Y3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlcyBh
bmQgYmxvYnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgdXNpbmcgYSBjdXJzb3IuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1
c2luZyBpbmxpbmUga2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDgxNWU3NWY2MzJkNGVm
Y2M4ZDZiMjE5MzQzMmJhMGNjZmQ5MTQ0MzguLjgzN2VhZTEwNjI4ZWRmOTNmMTc1NjhjYjkyMzBi
YTJjYjhkMzM1YzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBk
aXJlY3RvcnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5z
IGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5
IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmls
ZSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVu
dCBoYW5kbGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlm
ZmVyZW50IGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBkaXJlY3Rvcnkg
cmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBpc1Nh
bWVFbnRyeSBmb3IgaWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQg
ZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUgZGlyZWN0
b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlk
ZW50aWNhbCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZl
cmVudCBoYW5kbGVzIGZvciB0aGUgc2FtZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZm
ZXJlbnQgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVy
bnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hh
bm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dAppbmRleCBlM2NhN2M0Njg4MjUwZjQ0NzE1ODY1MjJhODg5Y2RlYWZlZmQxZjg0
Li4zOTVlY2E1NTRiZGQ3YjhhYjAyMmVkNTJjOTJkNDQzMWRjMTJhM2MyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0
Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNh
dGVkIHdvcmtlciBhbmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9hZGNhc3Qg
Y2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ugd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggN2FmNDExODMxZGMw
ZmI2Y2IyNjViODQzYjJiMGNlZjcwM2EwMDRjMy4uNGIxYzViZTNiNzdkOGY3YjYzMDQ2ZjlhMGEx
MmRlYTZjNDgyODgxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUVycm9yLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJTCBGYWlsIHRv
IHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5k
IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEgc2Fu
ZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFp
bCB0byBzZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBkYXRhIFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNy
b3NzIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBt
ZXNzYWdlIHBvcnQgaW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3Nz
IG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEg
bWVzc2FnZSBwb3J0IHRvIGEgc2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVSSSBpZnJhbWUu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2Vz
IHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIGNyb3NzIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3Jp
Z2luIG1lc3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNp
bmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA1M2U5
MGUyM2M0OTFmNTg4ZDFiNWI2ZWJlYzIxMjJkN2FjY2U4MDZiLi44MjFjNjFjOWY0ZjFlYTRmYjE1
Y2UxMTFkOWZjMmY3MDZhMGJiYzRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBt
ZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9y
dCBpbiBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3Jj
ZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5k
b3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CmluZGV4IGU1ZGVjMDhhOTUzY2E0MDZlMWE0ZjU5OGRkOGU0NGYwYWE3OTc3
YjUuLmE5Mzg0N2QwMDM1YjNiZjdlYWI1NTllMDQ4MDQ1ZDA2Y2IwNmI1ODAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdl
UG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4g
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2lu
ZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
bWVzc2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApp
bmRleCA0NTEwNjVlMzIyZGFmZTA0YmVhZTIxNDllNTE0MGFhNjVjMzZmNzBkLi44MWY2ZjYxMDdm
NGFmZmExOWMzODhlZTFjYzhkMDRiMWEzZDg0ZWRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3b3JrZXIuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2Fn
ZSBwb3J0IGluIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNoYXJlZCAg
d29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA4NjQ1
ZDkzZWU1NzIxNTc5YmI5ZWZjNTI4MjQ2NDQ0OTcyNWMxM2U3Li4zY2U5ZTgzMjIwZWRkMmJiZmE3
NDZkNGNlYjI5NGQ2NzBhN2Q1YzVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5n
IGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3Jp
Z2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhbiBpZnJhbWUg
c3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGYw
OTU5OTU4OTYzZjJmNGQ2YTk3ZThhN2JhNzM3NGZiNTFlODJkNGYuLjZkOTYyNjU4NDE5OGJlOTA3
ODFlZmM5N2IxZDBmZGM4ZmIxZjhhODYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAot
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW5kYm94ZWQg
c2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2lu
IHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFu
ZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA3
MmZmM2Y1NzQxMmRkMDhlYzZhNGJmM2MwNWZjMzY4Yjg5YWZhYTY2Li4yNGI0NmRkNTlhY2EwNzkw
NGZkNjdiOTkxMWY3MDcwNmFkOWEyNGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRlZCB3b3JrZXIu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNoYXJlZCB3
b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzZXJ2
aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNGNh
MGY5NDcxMGM4ZTNlMDVmOTVhMDc0NzA5Y2Q4N2EwN2IyODU3ZC4uN2U2NjFjZTBmNzkzNGY2OTNk
MjZmMzkxN2UwNzY4NDBlNzFjZGY5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dApAQCAtMSw5ICsxLDkgQEAKIAotRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVh
ZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1v
dmVkIGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmUoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBkaXJlY3Rv
cnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3Jl
IHRoZSByZWN1cnNpdmUgb3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitG
QUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIHRvIHJlbW92ZSBhbiBl
bXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUo
KSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkg
b24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYSBmaWxlIHNob3Vs
ZCBpZ25vcmUgdGhlIHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CmluZGV4IDFmYzQ3NDgwNjIzZWFiOTNiYzk2YTkzMTBhN2M1NjYzZjg1
ODgyMzAuLjc4MTcxZmYwZTQ4NzhlYjQ4OTkwMTUwOWNlYjQ1ODNkODU3YTY2ODggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9y
eUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0
ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1
ZSkgY3JlYXRlcyBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlz
dGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3Jp
ZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGdldERpcmVjdG9yeUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJl
Y3RvcnlIYW5kbGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIu
LiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3Rv
cnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGly
ZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRE
aXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRl
PWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNy
ZWF0ZXMgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBkaXJl
Y3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhh
bmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVy
YXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoKSB3aGVuIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoIGVt
cHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlI
YW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0
aCBzZXBhcmF0b3Igd2hlbiB0aGUgZGlyZWN0b3J5IGV4aXN0cyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBh
dGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5o
dHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDMzNmU0
ZGM3MzkxYjA4M2ZkMDRhYmI4MTY0YmYyNjBiMGNlZDE1ZDguLmFlNTVkMTM0ZDI3NDI1ZTA3Y2Ex
Yzg2ZmE2N2E2ZmQ0Y2U4N2Y1NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFu
ZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTMgKzEsMTMgQEAKIAotRkFJTCBnZXRG
aWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRl
PXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZh
bHNlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmls
ZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhp
c3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkg
ZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIu
LiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGZpbGUgZXhp
c3RzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9y
IG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZmlsZSBmb3Igbm9uLWV4
aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhh
bmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4
aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVh
ZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFk
eSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFs
c2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSB3aXRo
IGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24u
aHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDkyYmEwMDYx
YzExMmRiOTlhNjk2YzAzZmI0YWIwYTg3MTBhYjNiZTEuLmZlMWZmYTljNDViZjc4OTE4YzY4YmQ4
MTIyOWQ3MmVlMDMwNmE0YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsOCBAQAogCi1GQUlMIHJldHVybmluZyBlYXJseSBm
cm9tIGFuIGl0ZXJhdGlvbiBkb2Vzbid0IGNyYXNoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIEBAYXN5bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24g
d29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdmFsdWVzOiBmdWxs
IGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBr
ZXlzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdlIGNvbGxlY3RlZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZXR1cm5pbmcgZWFybHkgZnJv
bSBhbiBpdGVyYXRpb24gZG9lc24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIEBAYXN5bmNJdGVyYXRvcjogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29y
a3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBrZXlzOiBmdWxsIGl0ZXJhdGlv
biB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGl0ZXJhdGlvbiB3aGls
ZSBpdGVyYXRvciBnZXRzIGdhcmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQKaW5kZXggYWM2ZmMxOTQ4NDc5YzE3ZDk4YjAzOGI3NDdkNmI5MzA2ZGJjMDkyYy4uMjgx
NDcyMjViZGE4NDkyOGRjMzI2NzY0MTAwYTQ5ZmZkYTJiYzAxOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBA
CiAKLUZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVk
IGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
cmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGly
ZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHJlbW92ZUVudHJ5KCkgb24gYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBh
bGwgc3ViLWl0ZW1zIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92
ZUVudHJ5KCkgd2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFp
bCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdp
dGggIi4uIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJl
bW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRy
eSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYW4gZW1wdHkgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBv
biBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNo
b3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBlbXB0eSBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuIiBuYW1lIHNob3Vs
ZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3
aXRoICIuLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZUVudHJ5KCkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHNob3VsZCBmYWlsLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAppbmRleCA1NTcxZjExZDFjZjAwZDEzOWVmYTlmOGRjNmU4YzQyYzBi
MWIzMzQwLi5mNWU2NTFiMWVmMWM3ZjExOTVjNmE1N2EwNzI3MzY0MjI3MTNjMjYxIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0
dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBA
QAogCi1GQUlMIFJlc29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBmb3Igc2FtZSBkaXJlY3Rvcnkg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNv
cnJlY3QgcGF0aCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBSZXNvbHZl
IHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwgd2hlbiBl
bnRyeSBpcyBub3QgYSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJ
TCBSZXNvbHZlIHJldHVybnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0
IHBhdGggd2l0aCBub24tYXNjaWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0
ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVk
aWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCAz
MzAxMGQ3MTg0NTIyYmIzNzA1ZWIzOGI3MzRhM2ZhMGQyNjg2NmZjLi4zYjhjMGQ4ZGFiMDE4MGU5
MjNjNDQzOTdmNjQxYzY1ZGNhZTdmZDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29y
a2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGlj
YXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsMyAr
MSwzIEBACiAKLUZBSUwgQXR0ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEF0dGVtcHQgdG8gY3JlYXRlIGEg
c3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUt
Z2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDljZjAxOWQyNTY5Y2ZmNDk4YzEw
NGYxNWM3YWZhZGExYzE5N2E2YzcuLmY3YzE3MDczYWVlZmY5YWFmMGI3MjhjY2JlMmFiOGUxZGQ2
MWE1NzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1n
ZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw0ICsx
LDQgQEAKIAotRkFJTCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRoYXQgY2FuIGJlIHNsaWNl
ZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlKCkgcmV0dXJu
cyBsYXN0IG1vZGlmaWVkIHRpbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZB
SUwgZ2V0RmlsZSgpIHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlKCkgcmV0dXJucyBsYXN0IG1vZGlmaWVk
IHRpbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0t
cGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBhMDY5MjY2MWRkMjNkMTBjMDlmZmQ1
OWU2ZGJlMGIwYzhlMmM2MGJhLi5kMTUyNmM1OTk1ODY2MjVmMzE2YTc2Nzk4ZjcwMTc0OGI4NDZm
ZWUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0
cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
QEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0
aCBhbiBBcnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBj
YW4gYmUgcGlwZWQgdG8gd2l0aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCB3cml0ZSBj
b21tYW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBl
ZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUg
cXVldWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHBsYXlzIHdlbGwg
d2l0aCBmZXRjaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhYm9ydCgp
IGFib3J0cyB3cml0ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBjYW4g
YmUgcGlwZWQgdG8gd2l0aCBhIHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBCbG9iIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmpl
Y3Qgd2l0aCB3cml0ZSBjb21tYW5kIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Y2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBtdWx0aXBsZSBjb21tYW5k
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMg
Y2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHBsYXlzIHdl
bGwgd2l0aCBmZXRjaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGFib3J0KCkg
YWJvcnRzIHdyaXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxl
U3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggZjk3ZTgxMmQ3NzJhNjU1
MTU3YTVkYWNlZmMxMzVmYzA2NmIwYTIyYy4uMzdmN2E2NGFlOWE1ZjAxZGRkODdmNGFjZGE4Nzlh
NTRiNjY2NDhlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJs
ZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CkBAIC0xLDMxICsxLDMxIEBACiAKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJs
b2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9u
IHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
d3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1w
dHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9z
aXRpb24gYW5kIHN0cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHdyaXRlKCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBl
bmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVk
IHdpdGggYSBzdHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9m
ZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxl
ZCB3aXRoIGFuIG9mZnNldCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRv
IGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3Jp
dGUoKSB3aXRoIGEgdmFsaWQgdXRmLTggc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVuaXggbGluZSBlbmRpbmcg
cHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkg
d2l0aCBhIHN0cmluZyB3aXRoIHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBhcnJh
eSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWls
cyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMgbWFr
ZSBhdG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogdHJ1bmNhdGUo
KSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9z
ZSgpIG9wZXJhdGlvbiBtYXkgc3VjY2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0cyBmaWxl
IG9uIGNsb3NlLCBldmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogdHJ1bmNhdGUgbWlzc2luZyBzaXpl
IHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1z
OiB3cml0ZSBtaXNzaW5nIGRhdGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgV3JpdGVQYXJhbXM6IHNlZWsgbWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gaW52YWxpZCBi
bG9iIHRvIGFuIGVtcHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBm
aWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8g
YW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkg
d2l0aCBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5
IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIGNvbnNlY3V0aXZlbHkg
YXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3JpdGVQ
YXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24g
YW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRl
KCkgY2FsbGVkIHdpdGggYSBzdHJpbmcgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIGJsb2IgYW5kIGEgdmFs
aWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxs
ZWQgd2l0aCBhbiBvZmZzZXQgYmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgc3RyaW5nIHRvIGFu
IGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdp
dGggYSB2YWxpZCB1dGYtOCBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3
aXRoIHdpbmRvd3MgbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0
eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEg
dmFsaWQgdHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMg
cmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6
IHdyaXRhYmxlIGZpbGUgc3RyZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGUoKSBhZnRl
ciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWlj
IHdyaXRlczogdHJ1bmNhdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRlciBjbG9zZSgpIGZh
aWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogb25s
eSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbSBwZXJzaXN0
cyBmaWxlIG9uIGNsb3NlLCBldmVuIGlmIGZpbGUgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGdldFdyaXRlcigpIGNhbiBiZSB1c2VkIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBw
YXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiB3cml0
ZSBtaXNzaW5nIGRhdGEgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBX
cml0ZVBhcmFtczogc2VlayBtaXNzaW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0
eSBmaWxlIHNob3VsZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZp
bGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA1MDA5MjU0YTRmMTBlMjc5M2Jk
NjRjODQxOTU1OTI0NTIxMmYyZDExLi5lMzg1MWZjYTMzZTRjOWQ4Mzk2MTkxYjZkMWRiYWVhY2Yw
ZGEzODk0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmls
ZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIg
KzEsMTIgQEAKIAotRkFJTCB0cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSB0byBncm93IGEgZmlsZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxz
IHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJl
bW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgdHJ1bmNhdGUoKSBm
YWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1
ZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2Ug
Y29udGVudHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3Jp
dGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IGZhbHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0
cmVhbSBpbml0aWFsaXplZCB3aXRoIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1
bmNhdGUgc2l6ZSA8IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBjb21tYW5kcyBhcmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2NrZWQgYWZ0ZXIgZWFjaCBvcGVy
YXRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgdHJ1bmNhdGUoKSB0
byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgdHJ1bmNh
dGUoKSB0byBncm93IGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNy
ZWF0ZVdyaXRhYmxlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50
IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
dHJ1bmNhdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdE
YXRhOiB0cnVlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRo
IHNvdXJjZSBjb250ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNyZWF0
ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmls
ZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplID4gb2Zmc2V0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0
ZSBzaXplIDwgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY29tbWFu
ZHMgYXJlIHF1ZXVlZCwgc3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBkMjFkZWQ1NDk5NmU3ZjBhY2M4ODA2ZmE3ZTdlOWEyN2U3Y2Zj
ZTQ2Li5kOGRjZWJlNDg3MTAyMzA5MzQ1M2FmYWZiOGYzZDI3MmJkZjkzZjY4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtODY0LDMgKzg2NCw1IEBAIGZ1
bGxzY3JlZW4vZnVsbC1zY3JlZW4tZW50ZXItd2hpbGUtZXhpdGluZy5odG1sIFsgUGFzcyBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFBhc3MgXQogaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFBhc3MgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgUGFzcyBdCitzdG9y
YWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvIFsgUGFzcyBdCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhh
bmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlZWY3YjZlYzdjZGIwYTZlMTMy
MTMwOWJhZmYwNWU5NDk0MTFiZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMjAgQEAKK1RoaXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMg
b2YgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1Mgcm9vdEhhbmRsZS5uYW1lIGlzICIiCitQQVNTIHJvb3RIYW5kbGUua2luZCBp
cyAiZGlyZWN0b3J5IgorUEFTUyBkaXJIYW5kbGUubmFtZSBpcyAiZGlyIgorUEFTUyBkaXJIYW5k
bGUua2luZCBpcyAiZGlyZWN0b3J5IgorUEFTUyBpc1NhbWVFbnRyeSBpcyBmYWxzZQorUEFTUyBm
aWxlSGFuZGxlLm5hbWUgaXMgImZpbGUiCitQQVNTIGZpbGVIYW5kbGUua2luZCBpcyAiZmlsZSIK
K1BBU1MgaGFuZGxlTmFtZXMubGVuZ3RoIGlzIDIKK1BBU1MgaGFuZGxlTmFtZXNbMF0gaXMgImRp
ciIKK1BBU1MgaGFuZGxlTmFtZXNbMV0gaXMgImZpbGUiCitQQVNTIGNyZWF0ZUVycm9yLnRvU3Ry
aW5nKCkgaXMgIk5vdEZvdW5kRXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJl
LiIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5
LWhhbmRsZS1iYXNpY3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vz
cy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNzNkODZlMzdlZWQ4
NTE0ZjQzNzYzNGVmZDRlMzBhOGY4MGZkYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MuaHRtbApA
QCAtMCwwICsxLDEwMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRp
b25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuIik7CisKK3ZhciByb290SGFu
ZGxlLCBkaXJIYW5kbGUsIGZpbGVIYW5kbGUsIGlzU2FtZUVudHJ5LCBoYW5kbGVOYW1lcywgY3Jl
YXRlRXJyb3I7CisKK2Z1bmN0aW9uIGZpbmlzaFRlc3QoZXJyb3IpCit7CisgICAgaWYgKGVycm9y
KSB7CisgICAgICAgIHRlc3RGYWlsZWQoZXJyb3IpOworICAgIH0KKyAgICBmaW5pc2hKU1Rlc3Qo
KTsKK30KKworZnVuY3Rpb24gZ2V0RGlyZWN0b3J5KCkgeworICAgIG5hdmlnYXRvci5zdG9yYWdl
LmdldERpcmVjdG9yeSgpLnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICByb290SGFuZGxlID0g
aGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJvb3RIYW5kbGUubmFtZSIs
ICIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLmtpbmQiLCAi
ZGlyZWN0b3J5Iik7CisgICAgICAgIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShyb290SGFuZGxlKTsK
KyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7Cisg
ICAgfSk7Cit9CisKK2Z1bmN0aW9uIGNyZWF0ZURpcmVjdG9yeUhhbmRsZShmcm9tSGFuZGxlKSB7
CisgICAgZnJvbUhhbmRsZS5nZXREaXJlY3RvcnlIYW5kbGUoImRpciIsIHsgImNyZWF0ZSIgOiB0
cnVlIH0pLnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICBkaXJIYW5kbGUgPSBoYW5kbGU7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLm5hbWUiLCAiZGlyIik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZGlySGFuZGxlLmtpbmQiLCAiZGlyZWN0b3J5
Iik7CisgICAgICAgIGNoZWNrSWZTYW1lRW50cnkocm9vdEhhbmRsZSwgZGlySGFuZGxlKTsKKyAg
ICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAg
fSk7Cit9CisKK2Z1bmN0aW9uIGNoZWNrSWZTYW1lRW50cnkoaGFuZGxlMSwgaGFuZGxlMikKK3sK
KyAgICBoYW5kbGUxLmlzU2FtZUVudHJ5KGhhbmRsZTIpLnRoZW4oKHJlc3VsdCkgPT4geworICAg
ICAgICBpc1NhbWVFbnRyeSA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmVGYWxzZSgiaXNTYW1l
RW50cnkiKTsKKyAgICAgICAgY3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIHRydWUpOworICAg
IH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9
KTsKK30KKworZnVuY3Rpb24gY3JlYXRlRmlsZUhhbmRsZShmcm9tSGFuZGxlLCBjcmVhdGUpIHsK
KyAgICBsZXQgb3B0aW9ucyA9IHsgImNyZWF0ZSIgOiBjcmVhdGUgfTsKKyAgICBmcm9tSGFuZGxl
LmdldEZpbGVIYW5kbGUoImZpbGUiLCBvcHRpb25zKS50aGVuKChoYW5kbGUpID0+IHsKKyAgICAg
ICAgZmlsZUhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJm
aWxlSGFuZGxlLm5hbWUiLCAiZmlsZSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImZpbGVIYW5kbGUua2luZCIsICJmaWxlIik7CisgICAgICAgIHJlc29sdmVQYXRoKCk7CisgICAg
fSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGlmIChjcmVhdGUpIHsKKyAgICAgICAgICAg
IGZpbmlzaFRlc3QoZXJyb3IpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAg
ICAgIGNyZWF0ZUVycm9yID0gZXJyb3I7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
Y3JlYXRlRXJyb3IudG9TdHJpbmcoKSIsICJOb3RGb3VuZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBu
b3QgYmUgZm91bmQgaGVyZS4iKTsKKyAgICAgICAgZmluaXNoVGVzdCgpOworICAgIH0pOworfQor
CitmdW5jdGlvbiByZXNvbHZlUGF0aCgpIHsKKyAgICByb290SGFuZGxlLnJlc29sdmUoZmlsZUhh
bmRsZSkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIGhhbmRsZU5hbWVzID0gcmVzdWx0Owor
ICAgICAgICBzaG91bGRCZSgiaGFuZGxlTmFtZXMubGVuZ3RoIiwgIjIiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJoYW5kbGVOYW1lc1swXSIsICJkaXIiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJoYW5kbGVOYW1lc1sxXSIsICJmaWxlIik7CisgICAgICAgIHJl
bW92ZUVudHJ5KGRpckhhbmRsZSwgImZpbGUiKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsK
KyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlbW92
ZUVudHJ5KGZyb21IYW5kbGUsIG5hbWUpIHsKKyAgICBmcm9tSGFuZGxlLnJlbW92ZUVudHJ5KG5h
bWUpLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICAvLyBObyBlcnJvciBtZWFucyBpdCBpcyBy
ZW1vdmVkLgorICAgICAgICBjcmVhdGVGaWxlSGFuZGxlKGRpckhhbmRsZSwgZmFsc2UpOworICAg
IH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9
KTsKK30KKworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAganNUZXN0SXNBc3luYyA9IHRy
dWU7CisgICAgZ2V0RGlyZWN0b3J5KCk7Cit9IGVsc2UgeworICAgIGZpbmlzaFRlc3QoIndpbmRv
dy50ZXN0UnVubmVyIGlzIG5vdCBhdmFpbGFibGUiKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438958</attachid>
            <date>2021-09-22 09:45:34 -0700</date>
            <delta_ts>2021-09-22 10:07:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210922094533.patch</filename>
            <type>text/plain</type>
            <size>186823</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjQ0NjQ1YjJmMWM4ZmYyNjBjZmU4ODQwMzYwOTY2
MmJlZTQwNTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTA5LTIyICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudGVkIEZpbGVTeXN0ZW1IYW5kbGUgYW5kIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgKGV4Y2VwdCBkaXJlY3RvcnkgaXRlcmF0aW9uKSBpbnRl
cmZhY2VzIGZvciBPcmlnaW4gCisgICAgICAgIFByaXZhdGUgRmlsZSBTeXN0ZW0uCisgICAgICAg
IFNwZWM6IGh0dHBzOi8vd2ljZy5naXRodWIuaW8vZmlsZS1zeXN0ZW0tYWNjZXNzLyNhcGktZmls
ZXN5c3RlbWhhbmRsZQorICAgICAgICAgICAgICBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUt
c3lzdGVtLWFjY2Vzcy8jYXBpLWZpbGVzeXN0ZW1kaXJlY3RvcnloYW5kbGUKKyAgICAgICAgICAg
ICAgaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3NhbmRib3hlZC1m
aWxlc3lzdGVtCisKKyAgICAgICAgVGVzdDogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVj
dG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZTo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViQ29yZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaDoKKyAgICAgICAgKGlz
VHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1G
aWxlSGFuZGxlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaDoKKyAgICAgICAgKGlzVHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSk6IERlbGV0ZWQuCisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OmltcGwgY29uc3QpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlSW1wbDo6fkZpbGVTeXN0ZW1IYW5kbGVJbXBsKToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaDoKKyAgICAgICAgKiBNb2R1
bGVzL3N0b3JhZ2UvU3RvcmFnZUNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL3N0b3Jh
Z2UvU3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6
OmNvbm5lY3Rpb25JbmZvKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkpOgorICAgICAgICAqIE1vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAoV2ViQ29yZTo6dG9K
U05ld2x5Q3JlYXRlZCk6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0
TG9hZGVyLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaDoK
KwogMjAyMS0wOS0yMCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbQ29jb2FdIE1ha2UgQVZTYW1wbGVCdWZmZXJWaWRlb091dHB1dCBzdXBwb3J0IGFuIEV4cGVy
aW1lbnRhbCBGZWF0dXJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGIxYjlkZWI2YjVhNWFkMWY5MjMyZWU1MGE1M2Q3
NzQwNzFmNTU0N2IuLmJhOWZmNGE3NDQ3NjY0YTJjOGEwNmE0ZTNhODY0ZTk1MGY3ZDkxZTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsODggQEAKKzIwMjEtMDktMjIgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0
ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSW50cm9kdWNlIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciB0byBtYW5hZ2UgZmlsZSBo
YW5kbGVzLiBFYWNoIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIGNvcnJlc3BvbmRzIHRvIGEgCisg
ICAgICAgIEZpbGVTeXN0ZW1IYW5kbGUgaW4gd2ViIHByb2Nlc3MuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQ
cm9jZXNzOjpyZW1vdmVTdG9yYWdlTWFuYWdlckZvclNlc3Npb24pOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6Y29udmVydFRvRXhjZXB0aW9uQ29kZSk6CisgICAgICAgICogTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA6IEFkZGVkLgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNTYW1lRW50
cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENy
ZWF0ZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpn
ZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OmdldERpcmVjdG9yeUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6aWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpwYXRoIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6Z2V0SGFuZGxlKToKKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0UGF0aCk6CisgICAg
ICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3NlZCk6
CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlci5oOiBBZGRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjp+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbG9zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJv
bUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpjb25u
ZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0
b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok9y
aWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNs
b3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVj
a2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VN
YW5hZ2VyLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAg
ICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTb3Vy
Y2VzLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRE
aXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OnJlc29sdmUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmdldFBlcnNpc3RlZCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdGVkKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisK
IDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRlU2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2
aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2
Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAyZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdl
ZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BS
SVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxl
U3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1
MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEyZTEuLjNhMGNhZTg5YmRlZTUxMTBmZDQ5MTVjYmE4
ZTRjMWE1OWU3NTEzOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5j
cHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJ
bXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQor
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJp
bmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVT
eXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJ
bnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxl
Pj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBv
cnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdl
dEZpbGVIYW5kbGUobmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFtuYW1lLCBwcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3Vs
dC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShGaWxlU3lz
dGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1
cm5WYWx1ZSgpKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkK
K3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0
IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpH
ZXREaXJlY3RvcnlPcHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJm
YWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5j
cmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0RGlyZWN0b3J5SGFuZGxlKG5hbWUsIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbbmFtZSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVz
dWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsK
KworICAgICAgICBwcm9taXNlLnJlc29sdmUoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3Jl
YXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKSk7CisgICAg
fSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29u
c3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1v
dmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlzZSkKK3ZvaWQgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBz
dGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9w
dGlvbnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBkZWxldGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5y
ZWN1cnNpdmUgOiBmYWxzZTsKKyAgICBpbXBsKCkucmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVj
dXJzaXZlbHksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwog
fQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+
PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29u
c3QgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2Vw
dGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGlt
cGwoKS5yZXNvbHZlKGhhbmRsZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
YXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0
aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZh
bHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRl
ZDQ4Yzk0N2Y0MzQ1MDJiLi45MmExMmI0NzBjZTkxMGRmZGVjZDE4ZTkxZmY4ZTEzNWJmNDlkNmJh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAot
Y2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxl
IHsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKTsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYs
MTQgKzQ2LDE4IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9Owog
ICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
Jik7CiAgICAgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRp
b25hbDxHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8Rmls
ZVN5c3RlbUZpbGVIYW5kbGU+PiYmKTsKICAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25z
dCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYp
OwogICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFs
PFJlbW92ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CiAgICAgdm9pZCBy
ZXNvbHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2Vx
dWVuY2U8SURMVVNWU3RyaW5nPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25z
dCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5k
KCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVD
SUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcApp
bmRleCA5ZWRjMjA0ZTE3ZWUxMzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZm
NjNlNTcwMzljNmU5NDYyN2VhMjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUlt
cGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7
CiAKLVJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0
ZShTdHJpbmcmJiBuYW1lKQorUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmls
ZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
JiBpbXBsKQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFdURk1vdmUobmFtZSkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1G
aWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmls
ZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUp
KQorRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhh
bmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3Zl
KGltcGwpKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUz
OGI4YTUwNDgwZjNlMzIyNzlkYzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3
YWU2ZDFhMWU5MjcyZGQzMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwx
MSArMzQsMTUgQEAgY2xhc3MgRmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFs
IDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
RmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3Rl
bUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3Rl
bUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGU+PiYmKTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVt
RmlsZUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZp
bGVIYW5kbGUpCisgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0
ZW1IYW5kbGUmIGhhbmRsZSkgeyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFj
MjExMmI2MDg1MGZiZi4uNGFmNjExMDhiMTcxZjI2N2E0OTJmYjZlNTUwMjA0NmE2MmNkMTQwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUp
OwogCi1GaWxlU3lzdGVtSGFuZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9u
YW1lKFdURk1vdmUobmFtZSkpCisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAot
dm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxl
JiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1I
YW5kbGU6On5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1I
YW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkgY29uc3QKIHsKLSAgICBwcm9taXNlLnJlamVj
dChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsK
KyAgICBpZiAobV9raW5kICE9IGhhbmRsZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1l
KCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBs
LT5pc1NhbWVFbnRyeShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSld
KGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShy
ZXN1bHQpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4u
ZTVjZjcwMjNhNjk1OWQ2OGQzOTU0MWYwNjcwNzZlZDczYmY2ZmVhNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZS5oCkBAIC0zMSwyOSArMzEsMzIgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3Rl
bUhhbmRsZUltcGw7CiBlbnVtIGNsYXNzIFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNs
YXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxl
PiB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1Ymxp
YzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtp
bmQgOiB1aW50OF90IHsKICAgICAgICAgRmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsK
LQotICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5k
IGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUo
KSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1w
bCgpIGNvbnN0IHsgcmV0dXJuIG1faW1wbC5nZXQoKTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRy
eShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VE
ZWZlcnJlZDxJRExCb29sZWFuPiYmKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAgIEZpbGVTeXN0
ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAgRmlsZVN5c3RlbUhhbmRsZShLaW5k
LCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogCiBwcml2YXRl
OgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9OwogICAgIFN0cmluZyBtX25hbWU7Cisg
ICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1h
Y2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5kZXggMjA4ZTc0NWNjM2JmYzRjNzk3
NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYzYzVjODc3ZGU2ODNkNmFhODE2ZGJl
YWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApAQCAtMjksNiArMjksNyBAQCBlbnVt
IEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAog
ICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVuYWJsZWRCeVNldHRpbmc9RmlsZVN5
c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNkOGRhNDIyN2NlMGNjN2YwYzFmMGIyNWQ4ZDZhMGEwNzA0MzBlZDYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworY2xhc3Mg
RmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9u
T3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDogcHVibGljIFJlZkNvdW50ZWQ8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFu
ZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gc3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGlzU2FtZUVudHJ5KEZp
bGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjxi
b29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0
cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJl
ZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJl
bW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNpdmUsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
RHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEwYzhiMzFmOTRiNjZhZjA4
Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3MzY3MDRjYjIyNTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92
aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQ
cm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7CiAgICAgICAgIH0KIAot
ICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgdm9pZCBnZXRQZXJzaXN0
ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJzaXN0KENsaWVudE9yaWdp
biYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
ICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisKKyAgICAgICAgdm9pZCBm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7CisgICAgICAgIH0KICAgICB9
OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0aW9uKCkgZmluYWwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgK
aW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3NTUzMy4uMGE0MDA3M2I0
ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTI1LDE4ICsyNSwyMiBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBsYXRlPHR5cGVuYW1lPiBj
bGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3RvcmFn
ZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewogcHVi
bGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwotICAgIHZp
cnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4m
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0KGNvbnN0IENsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRPcmlnaW4mLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRm
OTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLmRjZWY5ODIwOGNlY2EwZmNiMzA2
ZWZkYmU5ODI3YjIxZTdiZDNkOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9z
dG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAgQEAKICNpbmNsdWRlICJT
dG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2luLmgiCisjaW5jbHVkZSAi
RXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAj
aW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAi
U2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpAQCAt
NDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JC
YXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3RlZChE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQorc3RydWN0IFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rp
b247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkK
IHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
RXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3IgZG9lcyBub3QgZXhpc3Qi
X3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5h
dmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBjb250ZXh0ID0gbV9uYXZp
Z2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAoIWNvbnRleHQpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
IlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJfcyB9OwogCisgICAgYXV0
byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAgICBpZiAoIW9yaWdpbikK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlz
IGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9y
YWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rp
b24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAKLSAgICBhdXRvKiBvcmln
aW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICghb3JpZ2luKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJP
cmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVjdGlvbkluZm8geyAqY29u
bmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0g
fTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERPTVByb21pc2VEZWZlcnJl
ZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5l
Y3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKIAotICAgIHJldHVybiBj
b25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdp
bi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQp
IG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZ2V0UGVyc2lzdGVkKGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21pc2UucmVz
b2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCiB7Ci0gICAgaWYg
KCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7
IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH0pOworICAg
IGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25JbmZvKCk7CisgICAg
aWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VFeGNl
cHRpb24oKSk7CiAKLSAgICBhdXRvIGNvbnRleHQgPSBtX25hdmlnYXRvci0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOwotICAgIGlmICghY29udGV4dCkKLSAgICAgICAgcmV0dXJuIHByb21pc2Uu
cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbnRleHQgaXMgaW52
YWxpZCJfcyB9KTsKLQotICAgIGF1dG8gY29ubmVjdGlvbiA9IGNvbnRleHQtPnN0b3JhZ2VDb25u
ZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJUaGUgY29ubmVjdGlvbiBpcyBp
bnZhbGlkIl9zIH0pOwotCi0gICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKLSAgICBpZiAoIW9yaWdpbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4
Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfSk7Ci0K
LSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdCh7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRh
dGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29s
IHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgY29ubmVjdGlvbklu
Zm8uY29ubmVjdGlvbi5wZXJzaXN0KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBX
VEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21p
c2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2Vy
OjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRl
cmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICByZXR1
cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1w
bGVtZW50ZWQiX3MgfSk7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29u
bmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JF
eGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgIGF1dG8gY29ubmVjdGlvbkluZm8g
PSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNv
bm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9u
SW5mby5vcmlnaW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11
dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAg
ICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0p
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4
MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdl
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdl
ci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8
dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNs
YXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsK
ICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2
LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5h
dmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRp
b25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmln
YXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
U291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3
MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAy
N2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRp
bmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2
ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0
ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdz
L2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZm
NWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEw
ZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlG
IC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMw
QUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNE
QTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAx
M0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3Vw
aW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRB
MTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUg
LyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVh
UmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1p
c3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9
OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRl
eHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJ
CTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJC
MzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQz
RTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZF
OEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsK
LQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0
MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1
QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZF
OTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmls
ZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2
MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhh
bmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAw
N0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVj
aFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsg
fTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJu
YXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmgg
Ki87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBB
QSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1w
bGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIz
MDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3
RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0
ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlz
dGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAw
RTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJF
OTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAw
NTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJE
RTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJE
RDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJ
CQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5j
cHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1l
bnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxD
b2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJD
OUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMy
QzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJD
OUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMx
QTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJ
OTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nl
c3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdl
ckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJ
CQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmls
ZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8q
IEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEw
MEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1
RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVD
dXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2
NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Zp
bGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNp
bmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpK
U0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFw
KGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sK
KyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30K
KworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1
bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBl
MTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRl
ci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNj
cmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIK
ICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQy
MDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0Mjhm
Y2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGll
bnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1
ZDVjMjE2MGQ3NmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcApAQCAtNDYxLDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFk
ZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0
CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3Zl
KHNlc3Npb25JRCk7CisgICAgaWYgKGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRh
a2Uoc2Vzc2lvbklEKSkKKyAgICAgICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3
b3JrUHJvY2Vzczo6Zm9yRWFjaE5ldHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0
d29ya1Nlc3Npb24mKT4mIGZ1bmN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kZGZmZTIyYTllOGRjYzViODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaApAQCAtMCwwICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51
bVRyYWl0cy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yIDogdWludDhfdCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWRO
YW1lLAorICAgIEludmFsaWRNb2RpZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVu
a25vd24KK307CisKK2lubGluZSBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2Vw
dGlvbkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVy
cm9yKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6Cisg
ICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJv
cjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0
OgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOwor
ICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0
ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpGaWxlTm90Rm91bmQsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6SW52YWxpZE5hbWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
SW52YWxpZE1vZGlmaWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bgorICAgID47Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5YmQ4YTcyYWEyYzA1ZDQ4MTA2YWQ0ZmFk
M2UwMGY2YTU1NDIzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgi
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJL
aXQgeworCisjaWYgT1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAn
XFwnOworI2Vsc2UKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYK
KworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBT
dHJpbmcmJiBuYW1lKQorICAgIDogbV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcjo6Z2VuZXJhdGVUaHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdl
YWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3Zl
KHBhdGgpKQorICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3Bh
dGguaXNFbXB0eSgpKTsKKworICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjpt
YWtlQWxsRGlyZWN0b3JpZXMobV9wYXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVt
OjpmaWxlRXhpc3RzKG1fcGF0aCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbTo6b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Bl
bk1vZGU6OldyaXRlKTsKKyAgICAgICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7Cisg
ICAgfQorfQorCitib29sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBhdXRvIHBh
dGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0
eSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gbV9wYXRoID09IHBhdGg7
Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RDcmVhdGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uLCBUeXBlIHR5cGUsIFN0
cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgaWYgKG1fdHlwZSAh
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1
cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsK
KworICAgIGlmICghbV9tYW5hZ2VyKQorICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0
aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFsaWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUg
PT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1lLmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQor
ICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52
YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5n
Q29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgcmV0dXJuIG1fbWFuYWdlci0+Y3JlYXRlSGFu
ZGxlKGNvbm5lY3Rpb24sIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIFN0cmlu
ZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgcmV0dXJuIHJlcXVlc3RD
cmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZp
bGUsIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlv
bjo6VW5pcXVlSUQgY29ubmVjdGlvbiwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vz
c2FyeSkKK3sKKyAgICByZXR1cm4gcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVh
dGVJZk5lY2Vzc2FyeSk7Cit9CisKK3N0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRp
cmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaDsKKworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBv
bmVudChtX3BhdGgsIG5hbWUpOworICAgIGF1dG8gdHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBl
KHBhdGgpOworICAgIGlmICghdHlwZSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlR5cGVNaXNtYXRjaDsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBG
aWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpk
ZWxldGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxl
VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAg
ICAgICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAg
ICAgICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247Cisg
ICAgICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBh
dGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bjsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitFeHBlY3Rl
ZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gcGF0aCA9
IG1fbWFuYWdlci0+Z2V0UGF0aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkp
CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpV
bmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkpCisgICAgICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPiB7IH07CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5zdWJz
dHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICByZXR1cm4gcmVzdFBhdGguc3BsaXQocGF0aFNl
cGFyYXRvcik7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iMjE5OGRhMjExYjgxZTIzNDI4ODE1Y2FlNGE1MjhmZjdjYWY1
NGE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQ
dHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4g
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3Mg
VHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJp
bmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgY29uc3QgU3RyaW5n
JiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICBib29sIGlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBnZXRG
aWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnkpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkpOworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVtb3Zl
RW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5KTsKKyAgICBF
eHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzb2x2ZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBUeXBl
LCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKKworICAgIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBT
dHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
clR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2Jq
ZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRh
MDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hh
bmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlm
aWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRl
bnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6Omdl
dEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sK
KyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAg
ICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2NjN2YwZjI4ODAyMzI1MDdi
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCwwICsxLDQ5IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8d3RmL1dl
YWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1
bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5k
bGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNiOWJhMTA5MWRjNDc4ODUzNTg5NWQ0Y2NmYTNhMzM2
MmRhYTdiNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0wLDAgKzEsMTA3IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVn
aXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcigpCit7
CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBmb3IgKGF1dG8gaWRlbnRp
ZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3Rlckhh
bmRsZShpZGVudGlmaWVyKTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBtYWtl
VW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8g
ZmlsZUV4aXN0cyA9IEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVh
dGVJZk5lY2Vzc2FyeSAmJiAhZmlsZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVj
dGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmls
ZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpm
aWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYgKCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAg
ICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24p
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBl
TWlzbWF0Y2gpOworICAgIH0KKworICAgIGF1dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZT4oKnRoaXMsIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUo
bmFtZSkpOworICAgIGF1dG8gbmV3SGFuZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRp
ZmllcigpOworICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbiwgWyZd
IHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3ItPnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVy
KTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVySGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpu
ZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5hZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92
ZShuZXdIYW5kbGUpKTsKKyAgICByZXR1cm4gbmV3SGFuZGxlSWRlbnRpZmllcjsKK30KKworY29u
c3QgU3RyaW5nJiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBt
X2hhbmRsZXMuZmluZChpZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxl
cy5lbmQoKSA/IGVtcHR5U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVj
dGlvbjo6VW5pcXVlSUQgY29ubmVjdGlvbikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFp
bigpKTsKKworICAgIGF1dG8gaGFuZGxlcyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNv
bm5lY3Rpb24pOworICAgIGlmIChoYW5kbGVzID09IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChhdXRvIGhhbmRsZUlkZW50aWZpZXIgOiBo
YW5kbGVzLT52YWx1ZSkgeworICAgICAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy50YWtlKGhh
bmRsZUlkZW50aWZpZXIpOworICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaGFu
ZGxlSWRlbnRpZmllcik7CisgICAgfQorICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUo
aGFuZGxlcyk7Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uKQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgcmV0dXJuIGNyZWF0ZUhhbmRsZShjb25u
ZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBTdHJpbmcg
eyBtX3BhdGggfSwgeyB9LCB0cnVlKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzdlM2U4OTE0ZTVjMDRhM2UxMzBj
MmNiYTk1Yzk3NDBkNDZjZTI0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApAQCAtMCwwICsx
LDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworCitjbGFzcyBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyPiB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkmKTsKKyAgICB+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCk7
CisKKyAgICBFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I+IGNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlE
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSwgU3RyaW5nJiYgcGF0aCwgU3RyaW5nJiYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSk7CisgICAgY29uc3QgU3RyaW5nJiBnZXRQYXRo
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgdm9pZCBjb25uZWN0aW9u
Q2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGly
ZWN0b3J5KElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworCitwcml2YXRlOgorICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9yZWdpc3Ry
eTsKKyAgICBIYXNoTWFwPElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIEhhc2hTZXQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPj4gbV9oYW5kbGVzQnlDb25uZWN0aW9uOworICAg
IEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+PiBtX2hhbmRsZXM7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggMzYyYWZiODg1MmFm
ZjQ4MDk5ZTA5Y2Y1NWU3ZWM2NzM1ZTUzMzNjNy4uYjA2ZmJiZGFkYWI5YmNlOGMxZDE2N2RmNWFk
MjczNjAyNjY3OTg5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2
LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlICJOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgi
CiAjaW5jbHVkZSA8cGFsL2NyeXB0by9DcnlwdG9EaWdlc3QuaD4KQEAgLTQ1LDYgKzQ3LDcgQEAg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBTdHIKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwog
CiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0
aGlzKSwgcGF0aCA9IHBhdGguaXNvbGF0ZWRDb3B5KCldKCkgbXV0YWJsZSB7CisgICAgICAgIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKTsKICAgICAgICAgbV9wYXRoID0gcGF0aDsKICAgICAgICAg
aWYgKCFtX3BhdGguaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBhdXRvIHNhbHRQYXRoID0gRmls
ZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgInNhbHQiKTsKQEAgLTUz
LDE4ICs1Niw1NCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwogfQogCitOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKQoreworICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKG1fY2xvc2VkKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsb3NlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNN
YWluKCkpOworCisgICAgaWYgKG1fY2xvc2VkKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3Ig
KGF1dG8mIGNvbm5lY3Rpb24gOiBtX2Nvbm5lY3Rpb25zKQorICAgICAgICBjb25uZWN0aW9uLnJl
bW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworCisgICAgbV9jbG9zZWQgPSB0cnVlOworICAg
IG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfV0o
KSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5ID0g
bnVsbHB0cjsKKyAgICAgICAgbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOwor
ICAgICAgICBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsKKworICAgICAg
ICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3Rl
Y3RlZFRoaXMpXSB7IH0pOworICAgIH0pOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJiBj
b25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25u
ZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUuZ2V0KCksIHRoaXMpOwor
ICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2b2lkIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pKQorICAgICAgICBy
ZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihN
ZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOwor
ICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMg
fSwgY29ubmVjdGlvbiA9IGNvbm5lY3Rpb24udW5pcXVlSUQoKV0oKSB7CisgICAgICAgIGZvciAo
YXV0byYgb3JpZ2luU3RvcmFnZU1hbmFnZXIgOiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJz
LnZhbHVlcygpKQorICAgICAgICAgICAgb3JpZ2luU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rpb25D
bG9zZWQoY29ubmVjdGlvbik7CisKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtw
cm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKV0geyB9KTsKKyAgICB9KTsKIH0K
IAogc3RhdGljIFN0cmluZyBlbmNvZGUoY29uc3QgU3RyaW5nJiBzdHJpbmcsIEZpbGVTeXN0ZW06
OlNhbHQgc2FsdCkKQEAgLTExMSw5ICsxNTAsNzIgQEAgdm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXQK
ICAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsKIH0KIAordm9pZCBOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
LCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1
bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKGxvY2FsT3JpZ2luU3Rv
cmFnZU1hbmFnZXIob3JpZ2luKS5maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIoKm1fZmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSkuZ2V0RGlyZWN0b3J5KGNvbm5lY3Rpb24udW5pcXVlSUQo
KSkpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNN
YWluKCkpOworCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVy
KGhhbmRsZS0+aXNTYW1lRW50cnkodGFyZ2V0SWRlbnRpZmllcikpOworfQorCit2b2lkIE5ldHdv
cmtTdG9yYWdlTWFuYWdlcjo6Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcm
JiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4
cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6
aXNNYWluKCkpOworCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3I6OlVua25vd24pKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKGhhbmRsZS0+Z2V0
RmlsZUhhbmRsZShjb25uZWN0aW9uLnVuaXF1ZUlEKCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlm
TmVjZXNzYXJ5KSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3Rv
cnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5l
Y2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8g
aGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRl
bnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7CisK
KyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0
aW9uLnVuaXF1ZUlEKCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KSk7Cit9CisK
K3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRl
bGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VS
VCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhh
bmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlVua25vd24pOworCisgICAgY29tcGxldGlvbkhhbmRsZXIoaGFuZGxlLT5yZW1vdmVF
bnRyeShuYW1lLCBkZWxldGVSZWN1cnNpdmVseSkpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1
bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUp
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lz
dGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5k
bGUtPnJlc29sdmUodGFyZ2V0SWRlbnRpZmllcikpOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdl
TWFuYWdlcjo6Y2xlYXJTdG9yYWdlRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsK
KwogICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigq
dGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKCkg
bXV0YWJsZSB7CiAgICAgICAgIG1fbG9jYWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsK
ICAgICAgICAgbV9zZXNzaW9uT3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyLmgKaW5kZXggZjZkYWVkMTNmMjY3NTM3N2MyMjhlMTdiNjJlZGZjMGJiY2Fl
MDg5MC4uZmEwYTBlYWU3NzI1MjA1NGI2NzU3ZjU4OTg0NWM4YmUwZmM0NDY0ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIuaApAQCAtMjYsNiArMjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgor
I2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgogI2luY2x1ZGUg
Ik9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4u
aD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CkBAIC0zNiw3ICszOCw5IEBAIHN0cnVjdCBD
bGllbnRPcmlnaW47CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFzcyBOZXR3b3JrU3RvcmFn
ZU1hbmFnZXIgOiBwdWJsaWMgSVBDOjpDb25uZWN0aW9uOjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2
ZXIgeworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTsKKworY2xhc3MgTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1
ZXVlTWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtTdG9y
YWdlTWFuYWdlcj4gY3JlYXRlKFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOwog
CkBAIC00NCwyNSArNDgsMzYgQEAgcHVibGljOgogICAgIHZvaWQgc3RvcFJlY2VpdmluZ01lc3Nh
Z2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24mKTsKIAogICAgIFBBTDo6U2Vzc2lvbklE
IHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Vzc2lvbklEOyB9CisgICAgdm9pZCBjbG9z
ZSgpOwogICAgIHZvaWQgY2xlYXJTdG9yYWdlRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYpOwogCiBwcml2YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlTWFuYWdlcihQQUw6OlNl
c3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICB+TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
KCk7CiAgICAgT3JpZ2luU3RvcmFnZU1hbmFnZXImIGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIo
Y29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJik7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNl
aXZlciAoaW1wbGVtZW50ZWQgYnkgZ2VuZXJhdGVkIGNvZGUpCiAgICAgdm9pZCBkaWRSZWNlaXZl
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKIAotICAgIC8vIE1lc3Nh
Z2UgSGFuZGxlcnMKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAgdm9pZCBwZXJzaXN0ZWQo
Y29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
KT4mJik7CiAgICAgdm9pZCBwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERp
cmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mLCBjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVu
dHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2
b2lkIGdldEZpbGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uJiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmKTsKKyAgICB2b2lkIGdldERpcmVjdG9y
eUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgcmVtb3ZlRW50cnkoRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRl
UmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcj4pPiYmKTsKIAogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAg
IFJlZjxXb3JrUXVldWU+IG1fcXVldWU7CiAgICAgU3RyaW5nIG1fcGF0aDsKICAgICBGaWxlU3lz
dGVtOjpTYWx0IG1fc2FsdDsKKyAgICBib29sIG1fY2xvc2VkIHsgZmFsc2UgfTsKICAgICBIYXNo
TWFwPFdlYkNvcmU6OkNsaWVudE9yaWdpbiwgc3RkOjp1bmlxdWVfcHRyPE9yaWdpblN0b3JhZ2VN
YW5hZ2VyPj4gbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyczsKICAgICBIYXNoTWFwPFdlYkNv
cmU6OkNsaWVudE9yaWdpbiwgc3RkOjp1bmlxdWVfcHRyPE9yaWdpblN0b3JhZ2VNYW5hZ2VyPj4g
bV9zZXNzaW9uT3JpZ2luU3RvcmFnZU1hbmFnZXJzOworICAgIFdlYWtIYXNoU2V0PElQQzo6Q29u
bmVjdGlvbj4gbV9jb25uZWN0aW9uczsgLy8gTWFpbiB0aHJlYWQgb25seS4KKyAgICBzdGQ6OnVu
aXF1ZV9wdHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeT4gbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VN
YW5hZ2VyLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmZWMyNzFlMGU4ZGU4OThm
ZjM5OTI2Y2I4NjQwZWExMGYxNzk5NTUwLi5jNmI2OTc5NTg5NzNmNmEwYzhlYWQ2ZWYzZjk5NGEx
NDFlM2JmYmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4K
QEAgLTI2LDQgKzI2LDEwIEBACiAgbWVzc2FnZXMgLT4gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIHsK
ICAgICBQZXJzaXN0ZWQoc3RydWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChi
b29sIHBlcnNpc3RlZCkgQXN5bmMKICAgICBQZXJzaXN0KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRP
cmlnaW4gb3JpZ2luKSAtPiAoYm9vbCBwZXJzaXN0ZWQpIEFzeW5jCisgICAgRmlsZVN5c3RlbUdl
dERpcmVjdG9yeShzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgLT4gKEV4cGVj
dGVkPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAg
SXNTYW1lRW50cnkoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRl
bnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0
SWRlbnRpZmllcikgLT4gKGJvb2wgcmVzdWx0KSBBc3luYworICAgIEdldEZpbGVIYW5kbGUoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3RyaW5n
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpIC0+IChFeHBlY3RlZDxXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yPiByZXN1bHQpIEFzeW5jIFdhbnRzQ29ubmVjdGlvbgorICAgIEdldERpcmVjdG9yeUhhbmRs
ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBT
dHJpbmcgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSkgLT4gKEV4cGVjdGVkPFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3I+IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgUmVtb3ZlRW50cnko
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgU3Ry
aW5nIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHkpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYworICAgIFJlc29sdmUoV2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0
OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRlbnRpZmllcikgLT4g
KEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+
IHJlc3VsdCkgQXN5bmMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IDc1YTFhZWQy
NDlmOTI4NTk5MGY2NmNhOTY4MTczNzg4ZWY0N2QwNTQuLjRmMDZmNDUyNDY1NjQ2ZDIwMTFiYzdm
NTNiYmRiMjgxMTU5M2FhNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjYsNiAr
MjYsOSBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5h
Z2VyLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisj
aW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKIG5hbWVzcGFjZSBXZWJLaXQg
ewogCiBlbnVtIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0TW9kZSA6
IGJvb2wgeyBCZXN0RWZmb3J0LCBQZXJzaXN0ZW50IH07CkBAIC0zOCwxMiArNDEsMzQgQEAgcHVi
bGljOgogICAgICAgICAsIG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgIHsKICAgICB9CisK
ICAgICBTdG9yYWdlQnVja2V0TW9kZSBtb2RlKCkgY29uc3QgeyByZXR1cm4gbV9tb2RlOyB9CiAg
ICAgdm9pZCBzZXRNb2RlKFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUpIHsgbV9tb2RlID0gbW9kZTsg
fQorCisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQg
Y29ubmVjdGlvbikKKyAgICB7CisgICAgICAgIGlmIChtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdl
cikKKyAgICAgICAgICAgIG1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLT5jb25uZWN0aW9uQ2xv
c2VkKGNvbm5lY3Rpb24pOworICAgIH0KKworICAgIFN0cmluZyB0eXBlU3RvcmFnZVBhdGgoY29u
c3QgU3RyaW5nJiBzdG9yYWdlSWRlbnRpZmllcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVy
biBtX3Jvb3RQYXRoLmlzRW1wdHkoKSA/IGVtcHR5U3RyaW5nKCkgOiBGaWxlU3lzdGVtOjpwYXRo
QnlBcHBlbmRpbmdDb21wb25lbnQobV9yb290UGF0aCwgc3RvcmFnZUlkZW50aWZpZXIpOworICAg
IH0KKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQorICAgIHsKKyAg
ICAgICAgaWYgKCFtX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcikKKyAgICAgICAgICAgIG1fZmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyID0gbWFrZVVuaXF1ZTxGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXI+KHR5cGVTdG9yYWdlUGF0aCgiRmlsZVN5c3RlbSIpLCByZWdpc3RyeSk7CisKKyAgICAgICAg
cmV0dXJuICptX2ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjsKKyAgICB9CisKIHByaXZhdGU6CiAg
ICAgU3RyaW5nIG1fcm9vdFBhdGg7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKICAgICBTdG9y
YWdlQnVja2V0TW9kZSBtX21vZGUgeyBTdG9yYWdlQnVja2V0TW9kZTo6QmVzdEVmZm9ydCB9Owor
ICAgIHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fZmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyOwogfTsKIAogT3JpZ2luU3RvcmFnZU1hbmFnZXI6Ok9yaWdpblN0b3Jh
Z2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpCkBAIC01MywxNCArNzgsMjkgQEAgT3JpZ2luU3RvcmFn
ZU1hbmFnZXI6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgpCiAKIE9yaWdpblN0
b3JhZ2VNYW5hZ2VyOjp+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKSA9IGRlZmF1bHQ7CiAKLXZvaWQg
T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoKQordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdl
cjo6Y29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24p
Cit7CisgICAgaWYgKG1fZGVmYXVsdEJ1Y2tldCkKKyAgICAgICAgbV9kZWZhdWx0QnVja2V0LT5j
b25uZWN0aW9uQ2xvc2VkKGNvbm5lY3Rpb24pOworfQorCitPcmlnaW5TdG9yYWdlTWFuYWdlcjo6
U3RvcmFnZUJ1Y2tldCYgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OmRlZmF1bHRCdWNrZXQoKQogewot
ICAgIG1fcGVyc2lzdGVkID0gdHJ1ZTsKLSAgICAKICAgICBpZiAoIW1fZGVmYXVsdEJ1Y2tldCkK
ICAgICAgICAgbV9kZWZhdWx0QnVja2V0ID0gbWFrZVVuaXF1ZTxTdG9yYWdlQnVja2V0PihtX3Bh
dGgsICJkZWZhdWx0Il9zKTsKIAotICAgIG1fZGVmYXVsdEJ1Y2tldC0+c2V0TW9kZShTdG9yYWdl
QnVja2V0TW9kZTo6UGVyc2lzdGVudCk7CisgICAgcmV0dXJuICptX2RlZmF1bHRCdWNrZXQ7Cit9
CisKK3ZvaWQgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoKQoreworICAgIG1fcGVyc2lz
dGVkID0gdHJ1ZTsKKyAgICBkZWZhdWx0QnVja2V0KCkuc2V0TW9kZShTdG9yYWdlQnVja2V0TW9k
ZTo6UGVyc2lzdGVudCk7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgT3JpZ2luU3Rv
cmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5JiByZWdpc3RyeSkKK3sKKyAgICByZXR1cm4gZGVmYXVsdEJ1Y2tldCgpLmZp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihyZWdpc3RyeSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09y
aWdpblN0b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaAppbmRleCA5ZTQyMTViM2M3MDBiZDQ5OWQwNmUzYjkw
NGMxNGVmZDY1Mjg5ZjMwLi43ZDExNjU1YTdkNGQ5MjBlZGQwYTlmM2ZmYWYzMmY5MjBkMTM2Yjg3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2lu
U3RvcmFnZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaApAQCAtMjUsMjIgKzI1LDI5IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCiAj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitj
bGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworY2xhc3MgRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyOworCiBjbGFzcyBPcmlnaW5TdG9yYWdlTWFuYWdlciB7CiAgICAgV1RGX01B
S0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgT3JpZ2luU3RvcmFnZU1h
bmFnZXIoU3RyaW5nJiYgcGF0aCk7CiAgICAgfk9yaWdpblN0b3JhZ2VNYW5hZ2VyKCk7CiAKKyAg
ICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCk7CiAgICAg
Ym9vbCBwZXJzaXN0ZWQoKSBjb25zdCB7IHJldHVybiBtX3BlcnNpc3RlZDsgfQogICAgIHZvaWQg
cGVyc2lzdCgpOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciYgZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkmKTsKIAogcHJpdmF0ZToK
ICAgICBlbnVtIGNsYXNzIFN0b3JhZ2VCdWNrZXRNb2RlIDogYm9vbDsKICAgICBjbGFzcyBTdG9y
YWdlQnVja2V0OworICAgIFN0b3JhZ2VCdWNrZXQmIGRlZmF1bHRCdWNrZXQoKTsKIAogICAgIHN0
ZDo6dW5pcXVlX3B0cjxTdG9yYWdlQnVja2V0PiBtX2RlZmF1bHRCdWNrZXQ7CiAgICAgU3RyaW5n
IG1fcGF0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CmluZGV4IGU1
Y2ZlMGRhNzFjMTI5OTJjOTY2ODYwMGZjNzc5ZGVlYmY3MmIxNWIuLjNmOTM2ZDI1MjkwMmU1MjQ3
OGViODExMDliZTI2OGRhMDk1ZTViOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9t
ZXNzYWdlcy5weQpAQCAtMzE2LDYgKzMxNiw4IEBAIGRlZiB0eXBlc190aGF0X2Nhbm5vdF9iZV9m
b3J3YXJkX2RlY2xhcmVkKCk6CiAgICAgICAgICdXZWJLaXQ6OkNvbnRlbnRXb3JsZElkZW50aWZp
ZXInLAogICAgICAgICAnV2ViS2l0OjpEaXNwbGF5TGlua09ic2VydmVySUQnLAogICAgICAgICAn
V2ViS2l0OjpEb3dubG9hZElEJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcicsCisgICAgICAgICdXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
cicsCiAgICAgICAgICdXZWJLaXQ6OkZvcm1TdWJtaXRMaXN0ZW5lcklkZW50aWZpZXInLAogICAg
ICAgICAnV2ViS2l0OjpHZW9sb2NhdGlvbklkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpH
cmFwaGljc0NvbnRleHRHTElkZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKaW5kZXggOTNkYmE2Y2Q5NjBi
MDg5MWIyYmRmNDlmZTVmZTAwNTc1ODRiYTQ2Mi4uZDllMmU4ZmZlZWM2YzhiOTVjZmQxMzlhMGYw
ZmFmMGM5NTRlM2Q3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CkBAIC0xMTUsNiArMTE1LDkgQEAgTmV0d29ya1By
b2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV09yaWdpblN0b3JlLmNwcCBAbm8tdW5pZnkKIE5ldHdv
cmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBAbm8tdW5p
ZnkKIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25u
ZWN0aW9uLmNwcCBAbm8tdW5pZnkKIAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlLmNwcAorTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5LmNwcAogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1h
bmFnZXIuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNw
cAogCkBAIC02OTIsNiArNjk1LDcgQEAgV2ViUHJvY2Vzcy9Vc2VyQ29udGVudC9XZWJVc2VyQ29u
dGVudENvbnRyb2xsZXIuY3BwCiBXZWJQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL1dlYkF1dGhl
bnRpY2F0b3JDb29yZGluYXRvci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vV2Vi
QXV0aG5Qcm9jZXNzQ29ubmVjdGlvbi5jcHAKIAorV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9TZXNzaW9uU3RhdGVDb252ZXJzaW9uLmNwcAogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9T
aGFyZWFibGVCaXRtYXBVdGlsaXRpZXMuY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDE5MWY3NmIzODk0ZTkxN2M1MjdjNGY5Mzhm
ZWVkODYzYzc3MDFjNjkuLjQyYmVjYTlkOGY0ZjA3NjZmZWRiYjI5MTMyNzExNGY2YmU2YTQwYTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTQ2OSw2ICsxNDY5LDkgQEAKIAkJOTMwODVEREYyNkU1QkNGMTAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0UyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdv
cmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oICovOyB9OwogCQk5MzA4NURFMDI2RTVC
Q0ZEMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDNDI2RTFCQkJEMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmggKi87IH07CiAJCTkzMDg1REUxMjZFNUJEMTMwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi87IH07CisJCTkzMTJCQUQ1MjZGMzNDMjYw
MEZEREY1RiAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKKwkJOTMxMkJBRDYyNkYzM0MyOTAwRkRE
RjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuaCAqLzsgfTsKKwkJOTMxQTFCRTIyNkY4NzAwOTAwODFBN0U1IC8q
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yLmggKi87IH07CiAJCTkzMjFENTg2MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVk
aWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlv
bkNvbnRyb2xsZXIuaCAqLzsgfTsKIAkJOTMyMUQ1OEExQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1t
ZWRpYXRlQWN0aW9uVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5
cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
OTMyMzYxMUUxQjAxNURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMzYxMUQxQjAx
NURBODAwRkE5MjMyIC8qIF9XS092ZXJsYXlTY3JvbGxiYXJTdHlsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNDg1LDYgKzE0ODgsNyBAQAog
CQk5MzU2RjJERjIxNTJCNzIzMDBFNkQ1REYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERjIxNTFBREY0
MDA3RjQ1NUYgLyogV2ViU1dPcmlnaW5TdG9yZS5jcHAgKi87IH07CiAJCTkzNTZGMkUwMjE1MkI3
NTIwMEU2RDVERiAvKiBXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0REQyMTUxQURGMzAw
N0Y0NTVGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgKi87IH07CiAJCTkz
NTZGMkUxMjE1MkI3NjYwMEU2RDVERiAvKiBXZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCQTA0RTEyMTUxQURG
NDAwN0Y0NTVGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgKi87IH07CisJCTkzNUI1NzlB
MjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVCNTc5ODI2RjUx
MjcwMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oICovOyB9Owog
CQk5MzVFRUI5QjEyNzc2MTdDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVt
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5
ODEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM1RUVCOUYxMjc3
NjFBQzAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVFRUI5NjEyNzc2MTZEMDAzMzIyQjgg
LyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzY4RUVERTIzMDNBOTAyMDBCREIxMUEgLyogU3RvcmFn
ZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTM2OEVFREMyMzAzQThEODAwQkRCMTFBIC8qIFN0b3JhZ2VN
YW5hZ2VyU2V0TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKQEAgLTQ5MDQsNiArNDkwOCwxNCBA
QAogCQk5MzA4NURDQzI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVz
c2FnZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTkzMDg1RENEMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3Jr
U3RvcmFnZU1hbmFnZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNS
ZXBsaWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtTdG9yYWdl
TWFuYWdlck1lc3NhZ2VzUmVwbGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0Qg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzMUEwNzUyMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
MUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1OTI2RjFCOTY3MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MzFBMUJFMDI2Rjg1QzMyMDA4MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMjFENTg1MUEzOEVFM0MwMDgwNTJCRSAvKiBX
S0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV0tJbW1lZGlhdGVBY3Rpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTkzMjFENTg3MUEzOEVFNzQwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvbkNv
bnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS0lt
bWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMjFENTg5MUEzOEYxOTYwMDgwNTJCRSAvKiBXS0ltbWVkaWF0ZUFjdGlvblR5cGVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQ5MTgsNiArNDkzMCw4IEBACiAJCTkzNDI1
ODhGMjU1NURDQTUwMDU5RUVERCAvKiBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTkzNDI1ODk4MjU1QjUzNEIwMDU5RUVERCAvKiBNZWRpYVBlcm1p
c3Npb25VdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQ
ZXJtaXNzaW9uVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNEI3
MjQzMTlGNUI5QkUwMEFFOTZENiAvKiBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tBY3Rpb25NZW51SXRlbVR5cGVzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTM1QjU3OTkyNkY1MTkyRjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTkzNUVFQjk1MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXS0J1bmRsZUJh
Y2tGb3J3YXJkTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk2
MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5MzVFRUI5NzEyNzc2MTZEMDAzMzIyQjggLyogV0tCdW5k
bGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC05NjkxLDYgKzk3MDUsMTQgQEAKIAkJOTMwODVEQzIyNkUxQkI2NTAwMEVD
NkE3IC8qIHN0b3JhZ2UgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0g
KAorCQkJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmggKi8sCisJCQkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlLmNwcCAqLywKKwkJCQk5MzFBMDc1MzI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuaCAqLywKKwkJCQk5MzFBMDc1NzI2RjEyNUEzMDA0NDc0Q0QgLyogRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggKi8sCisJCQkJOTM1QjU3OTkyNkY1MTky
RjAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwICovLAorCQkJ
CTkzNUI1Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lz
dHJ5LmggKi8sCisJCQkJOTMxQTA3NTEyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5jcHAgKi8sCisJCQkJOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REMzMjZFMUJCQkQwMDBFQzZBNyAv
KiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwICovLAogCQkJCTkzMDg1REM0MjZFMUJCQkQwMDBF
QzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLywKIAkJCQk5MzA4NURDNzI2RTFDNkVF
MDAwRUM2QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluICovLApAQCAtMTAw
MDYsNiArMTAwMjgsOCBAQAogCQkJCUNENjE3ODExMUU2REU5ODAwMEZEQTU3RCAvKiBjb2NvYSAq
LywKIAkJCQkyRDI4RjNERjE4ODVDQ0I0MDA0QjlFQUUgLyogaW9zICovLAogCQkJCUJDMTExQURF
MTEyRjVCOUEwMDMzN0JBQiAvKiBtYWMgKi8sCisJCQkJOTMxQTA3NTkyNkYxQjk2NzAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwICovLAorCQkJCTkzMUEwNzVBMjZG
MUI5NjgwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmggKi8sCiAJCQkJ
MUE3Mjg0NDQxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwICov
LAogCQkJCTFBNzI4NDQ1MTk1OUVEMTAwMDA3QkNFNSAvKiBTZXNzaW9uU3RhdGVDb252ZXJzaW9u
LmggKi8sCiAJCQkJRjQzQTlDREUyNUQ3MkUyRDAwOTkwRTI2IC8qIFNoYXJlYWJsZUJpdG1hcFV0
aWxpdGllcy5jcHAgKi8sCkBAIC0xMjE3OCw2ICsxMjIwMiwxMCBAQAogCQkJCTFBQTU3NUZCMTQ5
NkI1MjYwMEE0RUUwNiAvKiBFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3
MkVCQkQ3MjUzN0VCQUUwMDA1NTJCMyAvKiBFeHRyYVByaXZhdGVTeW1ib2xzRm9yVEFQSS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTdCODI2NDgyMzA1MEM1MTAwQjcyRUIwIC8qIEZpZG9TZXJ2aWNl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3RTUgLyogRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDYyNkYzM0MyOTAw
RkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
MzVCNTc5QTI2RjUxOTMzMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3Ry
eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxMkJBRDUyNkYzM0MyNjAwRkRERjVGIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDBCOTY2MUExOEUyNUFF
MTAwQ0UxRjg4IC8qIEZpbmRDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBOTBDMUY0MTI2
NEZENzEwMDNFNDRENCAvKiBGaW5kQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzU5
QzRBNTkxOEI4MTE3NDAwN0JEQ0I2IC8qIEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24uaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjFhYzBjYWM3ZDRjY2Q0ZmFkOWYzMmMwMGZkZjlkMGY1OTk0NzczMGMKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVQcm94eS5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorI2lu
Y2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmgiCisjaW5jbHVkZSA8V2ViQ29y
ZS9FeGNlcHRpb25Pci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaD4KKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK1JlZjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5PiBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KGlkZW50
aWZpZXIsIGNvbm5lY3Rpb24pKTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQorICAgIDogbV9p
ZGVudGlmaWVyKGlkZW50aWZpZXIpCisgICAgLCBtX2Nvbm5lY3Rpb24oJmNvbm5lY3Rpb24pCit7
Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y29ubmVjdGlvbkNsb3Nl
ZCgpCit7CisgICAgbV9jb25uZWN0aW9uID0gbnVsbHB0cjsKK30KKwordm9pZCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaGFu
ZGxlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPGJvb2w+JiYp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6
VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRp
ZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRp
ZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIGlm
IChtX2lkZW50aWZpZXIudG9VSW50NjQoKSA9PSAqaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFz
eW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6SXNTYW1lRW50cnkobV9p
ZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0oYm9vbCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcihyZXN1bHQpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlv
bk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAi
Q29ubmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3lu
Y1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldEZpbGVIYW5kbGUobV9p
ZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAoIXJlc3Vs
dCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRp
b24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJvcigpKSB9KTsKKyAgICAKKyAg
ICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVj
dGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtSGFu
ZGxlSW1wbD4gaW1wbCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShyZXN1
bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdU
Rk1vdmUoaW1wbCkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHk6OmdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25u
ZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RGlyZWN0b3J5SGFuZGxlKG1f
aWRlbnRpZmllciwgbmFtZSwgY3JlYXRlSWZOZWNlc3NhcnkpLCBbdGhpcywgcHJvdGVjdGVkVGhp
cyA9IFJlZiB7ICp0aGlzIH0sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1
bHQpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0
aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisg
ICAgICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw+IGltcGwgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUocmVz
dWx0LnZhbHVlKCksICptX2Nvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihX
VEZNb3ZlKGltcGwpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJz
aXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9pZD4m
Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3Jl
OjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0
aW9uLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6
UmVtb3ZlRW50cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSksIFtjb21w
bGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGVycm9yKSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKGVycm9yKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJy
b3IudmFsdWUoKSkgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICB9
KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKEZpbGVT
eXN0ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
V2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBp
cyBsb3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxl
SWRlbnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNl
bmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpSZXNvbHZl
KG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAg
aWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29y
ZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7
CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShyZXN1bHQudmFsdWUoKSkpOwor
ICAgIH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2FjYzBmYmU1Y2Y2ZWFmN2U1YTNl
NTI0Y2I5NDE4OGJhMjI4NTgxZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKQEAg
LTAsMCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9GaWxl
U3lzdGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENvbm5lY3Rpb247
Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNl
cHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFzcyBGaWxlU3lz
dGVtRmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBDOjpD
b25uZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3ByaXZhdGU6Cisg
ICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3RlbUhhbmRsZUlt
cGwKKyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmllcigp
IHsgcmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBpc1NhbWVFbnRy
eShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShj
b25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5k
bGVJbXBsPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0
IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZUlt
cGw+PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5h
bWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29y
ZTo6RXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVzb2x2ZShGaWxl
U3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0
aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSBmaW5hbDsKKworICAgIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgUmVmUHRyPElQQzo6Q29ubmVj
dGlvbj4gbV9jb25uZWN0aW9uOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNv
bm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YlN0b3JhZ2VDb25uZWN0aW9uLmNwcAppbmRleCA4ODk1MDhhYTZjNzMzMjFjNDMzZGI1N2Q5MTE3
M2U3MDQ2ODdlNDFhLi45MWFiYWVjODkyNmQ3Mzg1ZmM2MTU5MWM5NTI5ZjBhYWM3NTI1ODE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3Rv
cmFnZUNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJTdG9yYWdlQ29ubmVjdGlvbi5oIgogCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIgogI2luY2x1ZGUgIk5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3Nh
Z2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgpAQCAtMzgsMTYgKzM5LDMxIEBAIFJlZjxX
ZWJTdG9yYWdlQ29ubmVjdGlvbj4gV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNyZWF0ZSgpCiAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViU3RvcmFnZUNvbm5lY3Rpb24pOwogfQogCi12b2lkIFdl
YlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3Jp
Z2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
dm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6Z2V0UGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNs
aWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdGVkKG9yaWdpbiksIFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVy
c2lzdChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9u
OjpwZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGNvbm5lY3Rp
b24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6
UGVyc2lzdChvcmlnaW4pLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQg
V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoY29uc3QgV2ViQ29y
ZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvJiBjb25uZWN0aW9uID0gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlv
bigpOworICAgIGNvbm5lY3Rpb24uc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3Jr
U3RvcmFnZU1hbmFnZXI6OkZpbGVTeXN0ZW1HZXREaXJlY3Rvcnkob3JpZ2luKSwgW3dlYWtDb25u
ZWN0aW9uID0gbWFrZVdlYWtQdHIoY29ubmVjdGlvbiksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAg
aWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29y
ZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7
CisKKyAgICAgICAgaWYgKCF3ZWFrQ29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3Is
ICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgYXV0byBpbXBsID0gRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1ZSgpLCAqd2Vha0Nvbm5l
Y3Rpb24pOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKHsgfSwgV1RGTW92ZShpbXBsKSkpOworICAgIH0p
OworfQorCiBJUEM6OkNvbm5lY3Rpb24mIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpjb25uZWN0aW9u
KCkKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmggYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24u
aAppbmRleCAxYzBlNjYzNjliNTZlZGI3MGU5M2E4ODllMzI1MDM1NjY2OTMzNmU1Li4wZDZjMDFi
YTgyMWNiYzQ1NDI3ZWY3NmQ2YjZhZWJlY2QxNjdhYjg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5l
Y3Rpb24uaApAQCAtMzEsNiArMzEsMTEgQEAgbmFtZXNwYWNlIElQQyB7CiBjbGFzcyBDb25uZWN0
aW9uOwogfQogCituYW1lc3BhY2UgV2ViQ29yZSB7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3Mg
RXhjZXB0aW9uT3I7CitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworfQorCiBuYW1l
c3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViU3RvcmFnZUNvbm5lY3Rpb24gZmluYWwgOiBwdWJs
aWMgV2ViQ29yZTo6U3RvcmFnZUNvbm5lY3Rpb24gewpAQCAtMzgsOCArNDMsOSBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIFJlZjxXZWJTdG9yYWdlQ29ubmVjdGlvbj4gY3JlYXRlKCk7CiAKIHByaXZh
dGU6Ci0gICAgdm9pZCBwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOwotICAgIHZvaWQgcGVyc2lzdChXZWJDb3Jl
OjpDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7
CisgICAgdm9pZCBnZXRQZXJzaXN0ZWQoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCBwZXJzaXN0KGNv
bnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYpIGZpbmFsOworICAgIHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBXZWJDb3Jl
OjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlv
bk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJik+JiYpIGZpbmFs
OwogCiAgICAgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKCk7CiB9OwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM1MWEx
ZjhlZDc2MzRkZGUxOTFiNDBiOTZiNTFlMzI1ZDAzMTA1ODIuLjhjYmFkYmRiYTRiYWYyYTVmMDYy
ZWE1OGQwOWM4MzIyYzVhZTE4NjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOS0yMiAg
U2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBz
dXBwb3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICog
cGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogc3RvcmFnZS9maWxlc3lz
dGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNz
Lmh0bWw6IEFkZGVkLgorCiAyMDIxLTA5LTIwICBBeXVtaSBLb2ppbWEgIDxheXVtaV9rb2ppbWFA
YXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyODExMDI/KTogWyBNYWMgXSBtZWRp
YS90cmFjay90cmFjay1pbi1iYW5kLmh0bWwgaXMgYSBmbGFreSB0aW1lb3V0LgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMzQzN2E1ZTE0N2Q3ZGRhNDBkMWJlOWJjYzcxMDlhMjY4
MDVhZTJhYy4uM2Q4MDdiZTQ5M2UzZDQxMTQyMWI3YjY0YTI2MmZhNDU2YzIxZjgyNSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjEtMDktMjIgIFNp
aHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3Vw
cG9ydCBmb3IgRmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVj
dG9yeUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNh
dGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisKIDIw
MjEtMDktMjAgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAg
IEltcGxlbWVudCBpbnB1dC1zZWN1cml0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4
cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZjVkY2FjZDFl
MmExNzNlZWRmYWJjMDE2NGJkY2ZmMWM3ZWE5ZTQ3Yy4uZTRiM2RjYTQyNTVkMzBlYzliYWU4MGIy
MTA4YzU3ZmE3MTI3NmE2MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9u
cworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMDAsNiArMjAwLDcgQEAg
ZmFzdC9zcGVlY2hyZWNvZ25pdGlvbi9pb3MvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3Blcm1pc3Npb25zLyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zdG9yYWdlLyBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3MvIFsgU2tpcCBdCitzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvIFsgU2tpcCBdCiAKICMgYXBwLXByaXZhY3ktcmVwb3J0IHRlc3RzIHJlbHkgb24gV2ViS2l0
QWRkaXRpb25zCiBodHRwL3Rlc3RzL2FwcC1wcml2YWN5LXJlcG9ydC8gWyBTa2lwIF0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL29wYXF1ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCA2OTBkMjc5
MzQyZTZhOGQ5NDk5NjkxYjE5ZjVjZDk2NjRiYjQwMDk2Li4xYjRkYzhiNmRhODI2ZDVkZjIzZTdm
YTg5N2ZkMWVhNjczYjRlZDJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CkBAIC0yLDUgKzIsNSBAQAogUEFTUyBzaG93RGlyZWN0b3J5UGlja2Vy
KCkgbXVzdCBiZSB1bmRlZmluZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMuCiBQQVNTIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUgbXVzdCBiZSB1bmRlZmluZWQgZm9yIGRhdGEgVVJJIGlmcmFtZXMu
CiBGQUlMIG5hdmlnYXRvci5zdG9yYWdlLmdldERpcmVjdG9yeSgpIGFuZCBzaG93RGlyZWN0b3J5
UGlja2VyKCkgbXVzdCByZWplY3QgaW4gYSBzYW5kYm94ZWQgaWZyYW1lLiBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJv
ciIgYnV0IGdvdCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBFWENFUFRJT046IFR5cGVFcnJvciIK
LUZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dEaXJlY3RvcnlQ
aWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBvcGVuZWQgd2luZG93LiBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBpY2tlcigpOiBSRUpFQ1RFRDogU2VjdXJp
dHlFcnJvciIgYnV0IGdvdCAibmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk6IFJFSkVD
VEVEOiBOb3RTdXBwb3J0ZWRFcnJvciIKK0ZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0
b3J5KCkgYW5kIHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hl
ZCBvcGVuZWQgd2luZG93LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic2hvd0RpcmVjdG9yeVBp
Y2tlcigpOiBSRUpFQ1RFRDogU2VjdXJpdHlFcnJvciIgYnV0IGdvdCAic2hvd0RpcmVjdG9yeVBp
Y2tlcigpOiBFWENFUFRJT046IFR5cGVFcnJvciIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CmluZGV4IDQxMjRiN2JlNGRjZGFhZDRhYjkzMDc5ZGIyZGMwZGUxYzMy
NzJlYjQuLjIxNWFiNjYwYmQwNGJlYmViNjU0ZjgyZjM2ZWExMzM3ZTBiMDJhNzcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiAKLUZB
SUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNh
Y3Rpb24uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRs
ZSBpbiBJbmRleGVkREIgYW5kIHJlYWQgZnJvbSBuZXcgdHJhbnNhY3Rpb24uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIElu
ZGV4ZWREQi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFu
ZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCB1c2luZyBhIGN1cnNvci4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiB1c2luZyBp
bmxpbmUga2V5cy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU3RvcmUg
aGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIHBlbmRpbmcgdHJhbnNhY3Rpb24uIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWRE
QiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBTdG9yZSBoYW5kbGVzIGFuZCBibG9icyBpbiBJbmRleGVkREIuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQg
cmVhZCB1c2luZyBhIGN1cnNvci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBT
dG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1pc1NhbWVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQKaW5kZXggODE1ZTc1ZjYzMmQ0ZWZjYzhkNmIyMTkzNDMyYmEwY2NmZDkxNDQzOC4uODM3
ZWFlMTA2MjhlZGY5M2YxNzU2OGNiOTIzMGJhMmNiOGQzMzVjNiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2Ft
ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTAgQEAKIAotRkFJTCBp
c1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGRpcmVjdG9yeSBoYW5kbGVzIHJldHVybnMgdHJ1ZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlm
ZmVyZW50IGRpcmVjdG9yaWVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBoYW5kbGVzIGZvciB0aGUg
c2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNT
YW1lRW50cnkgZm9yIGlkZW50aWNhbCBmaWxlIGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQg
ZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFyaW5n
IGEgZmlsZSB0byBhIGZpbGUgaW4gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHJldHVybnMgZmFsc2Ug
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgY29tcGFy
aW5nIGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5
IGhhbmRsZXMgcmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
aXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBkaXJlY3RvcmllcyByZXR1cm5zIGZhbHNlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGRpZmZlcmVudCBo
YW5kbGVzIGZvciB0aGUgc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5zIHRy
dWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlm
ZmVyZW50IGZpbGVzIHJldHVybnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGZpbGUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBjb21wYXJpbmcg
YSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGNvbXBhcmluZyBh
IGZpbGUgdG8gYSBkaXJlY3RvcnkgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRj
YXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGUzY2E3YzQ2ODgyNTBm
NDQ3MTU4NjUyMmE4ODljZGVhZmVmZDFmODQuLjM5NWVjYTU1NGJkZDdiOGFiMDIyZWQ1MmM5MmQ0
NDMxZGMxMmEzYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhh
bmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMg
QEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNo
YW5uZWwgaW4gYW4gaWZyYW1lLCBkZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIGJyb2FkY2FzdCBjaGFubmVsIGluIGFuIGlmcmFtZSwgZGVkaWNhdGVk
IHdvcmtlciBhbmQgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dAppbmRleCA3YWY0MTE4MzFkYzBmYjZjYjI2NWI4NDNiMmIwY2VmNzAzYTAwNGMzLi40
YjFjNWJlM2I3N2Q4ZjdiNjMwNDZmOWEwYTEyZGVhNmM0ODI4ODE1IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMu
d2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSwx
MiArMSwxMiBAQAogCi1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIGNyb3NzIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIEZhaWwgdG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9y
aWdpbiBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNp
bmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdG8gYSBkYXRhIFVS
SSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8g
c2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRhdGEgVVJJIGlmcmFtZS4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhIHdpbmRvdy4gcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHRv
ICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRi
b3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIEZhaWwg
dG8gc2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBpZnJhbWUu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNl
aXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIHRvIGEg
c2FuZGJveGVkIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgdG8gYSBzYW5kYm94ZWQgaWZy
YW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNz
YWdlcyB0byBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBGYWlsIHRvIHNlbmQgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkYXRh
IFVSSSBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBz
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIHdpbmRvdy4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEgd2luZG93LiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0
byAgYSBzYW5kYm94ZWQgd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hl
ZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0
LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CmluZGV4IDUzZTkwZTIzYzQ5MWY1ODhkMWI1YjZlYmVjMjEyMmQ3YWNj
ZTgwNmIuLjgyMWM2MWM5ZjRmMWVhNGZiMTVjZTExMWQ5ZmMyZjcwNmEwYmJjNGUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1l
IG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUgc3JjZG9jLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdl
UG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZTVkZWMwOGE5NTNj
YTQwNmUxYTRmNTk4ZGQ4ZTQ0ZjBhYTc5NzdiNS4uYTkzODQ3ZDAwMzViM2JmN2VhYjU1OWUwNDgw
NDVkMDZjYjA2YjU4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdl
IHBvcnQgaW4gYSBibG9iIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW5kYm94ZWQgc2Ft
ZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDQ1MTA2NWUzMjJkYWZlMDRiZWFlMjE0OWU1
MTQwYWE2NWMzNmY3MGQuLjgxZjZmNjEwN2Y0YWZmYTE5YzM4OGVlMWNjOGQwNGIxYTNkODRlZGYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVz
c2FnZS1NZXNzYWdlUG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQ
b3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAot
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
ZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZp
Y2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFu
ZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2hhcmVkICB3b3Jr
ZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
bWVzc2FnZSBwb3J0IGluIGEgc2hhcmVkICB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CmluZGV4IDg2NDVkOTNlZTU3MjE1NzliYjllZmM1MjgyNDY0NDQ5NzI1
YzEzZTcuLjNjZTllODMyMjBlZGQyYmJmYTc0NmQ0Y2ViMjk0ZDY3MGE3ZDVjNWUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFt
ZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9y
aWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
biBpZnJhbWUgc3JjZG9jLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIGlm
cmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKaW5kZXggZjA5NTk5NTg5NjNmMmY0ZDZhOTdlOGE3YmE3Mzc0ZmI1
MWU4MmQ0Zi4uNmQ5NjI2NTg0MTk4YmU5MDc4MWVmYzk3YjFkMGZkYzhmYjFmOGE4NiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdp
bmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBibG9iIHdpbmRvdy4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Igd2luZG93LiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBzYW5kYm94ZWQgc2FtZSBvcmlnaW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDcyZmYzZjU3NDEyZGQwOGVjNmE0YmYzYzA1ZmMzNjhi
ODlhZmFhNjYuLjI0YjQ2ZGQ1OWFjYTA3OTA0ZmQ2N2I5OTExZjcwNzA2YWQ5YTI0YmQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNlcnZpY2Ugd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2hhcmVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGRlZGljYXRl
ZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNlcnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQg
d29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAppbmRleCA0Y2EwZjk0NzEwYzhlM2UwNWY5NWEwNzQ3MDljZDg3YTA3
YjI4NTdkLi43ZTY2MWNlMGY3OTM0ZjY5M2QyNmYzOTE3ZTA3Njg0MGU3MWNkZjljIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsOSBAQAogCi1GQUlMIHJl
bW92ZSgpIHRvIHJlbW92ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGFu
IGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBy
ZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5
IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCByZW1vdmUoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFs
bCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3Zl
KCkgb24gYSBmaWxlIHNob3VsZCBpZ25vcmUgdGhlIHJlY3Vyc2l2ZSBvcHRpb24gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkg
cmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rv
cnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmUo
KSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91
bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCByZW1vdmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldERpcmVjdG9yeUhhbmRsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUt
Z2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggMWZjNDc0ODA2
MjNlYWI5M2JjOTZhOTMxMGE3YzU2NjNmODU4ODIzMC4uNzgxNzFmZjBlNDg3OGViNDg5OTAxNTA5
Y2ViNDU4M2Q4NTdhNjY4OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0
b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMTIgQEAKIAotRkFJ
TCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3Rp
bmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0
RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9yeSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
Y3JlYXRlPWZhbHNlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkg
cmV0dXJucyBleGlzdGluZyBkaXJlY3RvcmllcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZp
bGUgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUo
KSB3aXRoICIuIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdl
dERpcmVjdG9yeUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBw
YXRoIHNlcGFyYXRvciB3aGVuIHRoZSBkaXJlY3RvcnkgZXhpc3RzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0
aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlM
IGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGlu
ZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVj
dG9yeUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPWZh
bHNlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0
aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2luZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdoZW4gYSBmaWxlIGFscmVhZHkgZXhpc3Rz
IHdpdGggdGhlIHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdl
dERpcmVjdG9yeUhhbmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3aXRoICIuLiIg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRs
ZShjcmVhdGU9ZmFsc2UpIHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBkaXJlY3Rvcnkg
ZXhpc3RzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFu
ZGxlKGNyZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKaW5kZXggMzM2ZTRkYzczOTFiMDgzZmQwNGFiYjgxNjRiZjI2MGIwY2Vk
MTVkOC4uYWU1NWQxMzRkMjc0MjVlMDdjYTFjODZmYTY3YTZmZDRjZTg3ZjU0ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRs
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAt
MSwxMyArMSwxMyBAQAogCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3Rz
IGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRlcyBhbiBlbXB0eSBmaWxlIGZv
ciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9
dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRob3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdo
ZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUp
IHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoIGVt
cHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhh
bmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgZ2V0RmlsZUhhbmRsZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBz
ZXBhcmF0b3Igd2hlbiB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFy
YXRvciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9uLWV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgY3JlYXRl
cyBhbiBlbXB0eSBmaWxlIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlz
dGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoY3JlYXRlPXRydWUpIHJldHVybnMgZXhpc3RpbmcgZmlsZXMgd2l0aG91dCBlcmFzaW5nIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFs
c2UpIHdoZW4gYSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1
ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCBlbXB0
eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZSgp
IHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxl
SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4g
dGhlIGZpbGUgZXhpc3RzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKaW5kZXggOTJiYTAwNjFjMTEyZGI5OWE2OTZjMDNmYjRhYjBhODcxMGFiM2Jl
MS4uZmUxZmZhOWM0NWJmNzg5MThjNjhiZDgxMjI5ZDcyZWUwMzA2YTRjNSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOCArMSw4IEBA
CiAKLUZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3QgY3Jhc2gg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgQEBhc3luY0l0ZXJhdG9yOiBm
dWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBlbnRyaWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGtleXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGl0ZXJhdGlvbiB3aGlsZSBpdGVyYXRv
ciBnZXRzIGdhcmJhZ2UgY29sbGVjdGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIHJldHVybmluZyBlYXJseSBmcm9tIGFuIGl0ZXJhdGlvbiBkb2Vzbid0IGNyYXNoIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgQEBhc3luY0l0ZXJhdG9yOiBmdWxsIGl0
ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGVudHJpZXM6
IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
dmFsdWVzOiBmdWxsIGl0ZXJhdGlvbiB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGtleXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgaXRlcmF0aW9uIHdoaWxlIGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0
ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVt
b3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCBhYzZmYzE5NDg0NzljMTdkOThi
MDM4Yjc0N2Q2YjkzMDZkYmMwOTJjLi4yODE0NzIyNWJkYTg0OTI4ZGMzMjY3NjQxMDBhNDlmZmRh
MmJjMDE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKQEAgLTEsMTEgKzEsMTEgQEAKIAotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92
ZSBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50
cnkoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHRvIHJlbW92ZSBhbiBlbXB0
eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3Zl
RW50cnkoKSBvbiBhIG5vbi1lbXB0eSBkaXJlY3Rvcnkgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhIGRpcmVjdG9yeSBy
ZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5hbWUgc2hvdWxk
IGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnko
KSB3aXRoICIuIiBuYW1lIHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0
aCBzZXBhcmF0b3Igc2hvdWxkIGZhaWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUg
c2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRy
eSgpIHRvIHJlbW92ZSBhbiBlbXB0eSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQg
ZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24g
YSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkgc2hvdWxkIGRlbGV0ZSBhbGwgc3ViLWl0ZW1zIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGVtcHR5IG5h
bWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVF
bnRyeSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggIi4uIiBuYW1lIHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoIGEgcGF0aCBz
ZXBhcmF0b3Igc2hvdWxkIGZhaWwuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDU1NzFmMTFk
MWNmMDBkMTM5ZWZhOWY4ZGM2ZThjNDJjMGIxYjMzNDAuLmY1ZTY1MWIxZWYxYzdmMTE5NWM2YTU3
YTA3MjczNjQyMjcxM2MyNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5
IGFycmF5IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggd2l0aCBub24t
YXNjaWkgY2hhcmFjdGVycyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBS
ZXNvbHZlIHJldHVybnMgbnVsbCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFJlc29sdmUgcmV0dXJucyBlbXB0eSBhcnJheSBm
b3Igc2FtZSBkaXJlY3RvcnkgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNv
bHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCB3aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJz
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIG51bGwg
d2hlbiBlbnRyeSBpcyBub3QgYSBjaGlsZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUt
c3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRv
dy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3Jl
YXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53
aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDMzMDEwZDcxODQ1MjJiYjM3MDVlYjM4YjczNGEzZmEw
ZDI2ODY2ZmMuLjNiOGMwZDhkYWIwMTgwZTkyM2M0NDM5N2Y2NDFjNjVkY2FlN2ZkOTIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1h
Y2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0
ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2lu
ZG93LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDMgQEAKIAotRkFJTCBBdHRlbXB0IHRvIGNyZWF0
ZSBhIHN5bmMgYWNjZXNzIGhhbmRsZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
K0ZBSUwgQXR0ZW1wdCB0byBjcmVhdGUgYSBzeW5jIGFjY2VzcyBoYW5kbGUuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggOWNmMDE5ZDI1NjljZmY0OThjMTA0ZjE1YzdhZmFkYTFjMTk3YTZjNy4uZjdjMTcwNzNh
ZWVmZjlhYWYwYjcyOGNjYmUyYWI4ZTFkZDYxYTU3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5h
bnktZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCi1GQUlMIGdldEZpbGUoKSBwcm92aWRl
cyBhIGZpbGUgdGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGdldEZpbGUoKSByZXR1cm5zIGxhc3QgbW9kaWZpZWQgdGltZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBnZXRGaWxlKCkgcHJvdmlkZXMgYSBmaWxlIHRo
YXQgY2FuIGJlIHNsaWNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZp
bGUoKSByZXR1cm5zIGxhc3QgbW9kaWZpZWQgdGltZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxl
U3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cmlu
ZGV4IGEwNjkyNjYxZGQyM2QxMGMwOWZmZDU5ZTZkYmUwYjBjOGUyYzYwYmEuLmQxNTI2YzU5OTU4
NjYyNWYzMTZhNzY3OThmNzAxNzQ4Yjg0NmZlZTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlw
ZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlMIGNhbiBi
ZSBwaXBlZCB0byB3aXRoIGEgc3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGFuIEFycmF5QnVmZmVyIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBh
IHBhcmFtIG9iamVjdCB3aXRoIHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBwYXJhbSBvYmplY3Qgd2l0aCBt
dWx0aXBsZSBjb21tYW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBt
dWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgcGxheXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIGFib3J0KCkgYWJvcnRzIHdyaXRlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgc3RyaW5nIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJy
YXlCdWZmZXIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQg
dG8gd2l0aCBhIEJsb2IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUg
cGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVjdCB3aXRoIHdyaXRlIGNvbW1hbmQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9i
amVjdCB3aXRoIG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgbXVsdGlwbGUgb3BlcmF0aW9ucyBjYW4gYmUgcXVldWVkIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgcGxheXMgd2VsbCB3aXRoIGZldGNoIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRh
YmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dAppbmRleCBmOTdlODEyZDc3MmE2NTUxNTdhNWRhY2VmYzEzNWZjMDY2YjBhMjJjLi4zN2Y3
YTY0YWU5YTVmMDFkZGQ4N2Y0YWNkYTg3OWE1NGI2NjY0OGU4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3Ry
ZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsMzEgKzEsMzEgQEAKIAotRkFJ
TCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIFdy
aXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGEgc3RyaW5nIHRvIGFuIGVtcHR5IGZp
bGUgd2l0aCB6ZXJvIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgY29uc2VjdXRp
dmVseSBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgc3RyaW5nIGFwcGVuZHMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRo
b3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2YWxpZCBvZmZz
ZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQg
d2l0aCBhIGJsb2IgYW5kIGEgdmFsaWQgb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9uZCB0aGUgZW5k
IG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRl
KCkgd2l0aCBhbiBlbXB0eSBzdHJpbmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB1dGYtOCBzdHJpbmcg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgc3Ry
aW5nIHdpdGggdW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggd2luZG93cyBsaW5l
IGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
d3JpdGUoKSB3aXRoIGFuIGVtcHR5IGFycmF5IGJ1ZmZlciB0byBhbiBlbXB0eSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5
cGVkIGFycmF5IGJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBh
dG9taWMgd3JpdGVzOiBjbG9zZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1v
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6
IHdyaXRhYmxlIGZpbGUgc3RyZWFtcyBtYWtlIGF0b21pYyBjaGFuZ2VzIG9uIGNsb3NlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkg
YWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBhdG9taWMgd3JpdGVzOiB0cnVuY2F0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogY2xvc2UoKSBhZnRl
ciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0
b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3BlcmF0aW9uIG1heSBzdWNjZWVkIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRhYmxl
IGZpbGUgc3RyZWFtIHBlcnNpc3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBpcyByZW1v
dmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldFdyaXRlcigpIGNh
biBiZSB1c2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFy
YW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgV3JpdGVQYXJhbXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogc2VlayBtaXNz
aW5nIHBvc2l0aW9uIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IHdyaXRlKCkgd2l0aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVq
ZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHdyaXRlKCkgd2l0aCBh
biBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRp
b24gdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdy
aXRlKCkgYSBzdHJpbmcgdG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4gZW1wdHkgZmls
ZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3Jp
dGUoKSBjYWxsZWQgY29uc2VjdXRpdmVseSBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJp
bmcgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgV3Jp
dGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiBhbmQgYmxvYiBhcHBlbmRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhIHN0cmluZyBhbmQgYSB2
YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNh
bGxlZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGFuIG9mZnNldCBiZXlvbmQgdGhlIGVu
ZCBvZiB0aGUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkg
d2l0aCBhbiBlbXB0eSBzdHJpbmcgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04IHN0cmluZyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHN0cmluZyB3aXRoIHVu
aXggbGluZSBlbmRpbmcgcHJlc2VydmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5nIHdpdGggd2luZG93cyBsaW5lIGVuZGluZyBwcmVzZXJ2
ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1w
dHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSB2YWxpZCB0eXBlZCBhcnJheSBidWZmZXIgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9zZSgpIGZhaWxz
IHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgYXRvbWljIHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRv
bWljIGNoYW5nZXMgb24gY2xvc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBh
dG9taWMgd3JpdGVzOiB3cml0ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB0cnVuY2F0ZSgpIGFmdGVyIGNsb3Nl
KCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVz
OiBjbG9zZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBhdG9taWMgd3JpdGVzOiBvbmx5IG9uZSBjbG9zZSgpIG9wZXJhdGlvbiBtYXkgc3Vj
Y2VlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdy
aXRhYmxlIGZpbGUgc3RyZWFtIHBlcnNpc3RzIGZpbGUgb24gY2xvc2UsIGV2ZW4gaWYgZmlsZSBp
cyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0V3JpdGVyKCkg
Y2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFt
czogdHJ1bmNhdGUgbWlzc2luZyBzaXplIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHdyaXRlIG1pc3NpbmcgZGF0YSBwYXJhbSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdyaXRlUGFyYW1zOiBzZWVrIG1pc3NpbmcgcG9zaXRp
b24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGgg
YW4gaW52YWxpZCBibG9iIHRvIGFuIGVtcHR5IGZpbGUgc2hvdWxkIHJlamVjdCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
CmluZGV4IDUwMDkyNTRhNGYxMGUyNzkzYmQ2NGM4NDE5NTU5MjQ1MjEyZjJkMTEuLmUzODUxZmNh
MzNlNGM5ZDgzOTYxOTFiNmQxZGJhZWFjZjBkYTM4OTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMu
YW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBAQAogCi1GQUlMIHRydW5jYXRlKCkgdG8g
c2hyaW5rIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB0cnVu
Y2F0ZSgpIHRvIGdyb3cgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIGNyZWF0ZVdyaXRhYmxlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92
ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBmYWlscyB3
aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB0cnVuY2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyBy
ZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRh
YmxlKHtrZWVwRXhpc3RpbmdEYXRhOiB0cnVlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVh
bSBpbml0aWFsaXplZCB3aXRoIHNvdXJjZSBjb250ZW50cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogZmFsc2V9
KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggZW1wdHkgZmls
ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246
IHRydW5jYXRlIHNpemUgPiBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgY3Vyc29yIHBvc2l0aW9uOiB0cnVuY2F0ZSBzaXplIDwgb2Zmc2V0IHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBp
cyB1bmxvY2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCB0cnVuY2F0ZSgpIHRvIHNocmluayBhIGZpbGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB0cnVuY2F0ZSgpIHRvIGdyb3cgYSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVu
dCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHdyaXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB0cnVuY2F0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRp
cmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3Jl
YXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZp
bGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IGZh
bHNlfSk6IGF0b21pYyB3cml0YWJsZSBmaWxlIHN0cmVhbSBpbml0aWFsaXplZCB3aXRoIGVtcHR5
IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjdXJzb3IgcG9zaXRpb246
IHRydW5jYXRlIHNpemUgPiBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBjb21tYW5kcyBhcmUgcXVldWVkLCBzdHJlYW0gaXMgdW5sb2Nr
ZWQgYWZ0ZXIgZWFjaCBvcGVyYXRpb24gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQyMWRlZDU0OTk2
ZTdmMGFjYzg4MDZmYTdlN2U5YTI3ZTdjZmNlNDYuLmQ4ZGNlYmU0ODcxMDIzMDkzNDUzYWZhZmI4
ZjNkMjcyYmRmOTNmNjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRp
b25zCkBAIC04NjQsMyArODY0LDUgQEAgZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1lbnRlci13aGls
ZS1leGl0aW5nLmh0bWwgWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cGVybWlzc2lvbnMvIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0
b3JhZ2UvIFsgUGFzcyBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy8gWyBQYXNzIF0KK3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy8gWyBQYXNzIF0K
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVj
dG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmls
ZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYmVlZjdiNmVjN2NkYjBhNmUxMzIxMzA5YmFmZjA1ZTk0OTQxMWJmZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3Rvcnkt
aGFuZGxlLWJhc2ljcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMCBAQAorVGhpcyB0ZXN0IGNo
ZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByb290SGFuZGxlLm5hbWUgaXMg
IiIKK1BBU1Mgcm9vdEhhbmRsZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGRpckhhbmRsZS5u
YW1lIGlzICJkaXIiCitQQVNTIGRpckhhbmRsZS5raW5kIGlzICJkaXJlY3RvcnkiCitQQVNTIGlz
U2FtZUVudHJ5IGlzIGZhbHNlCitQQVNTIGZpbGVIYW5kbGUubmFtZSBpcyAiZmlsZSIKK1BBU1Mg
ZmlsZUhhbmRsZS5raW5kIGlzICJmaWxlIgorUEFTUyBoYW5kbGVOYW1lcy5sZW5ndGggaXMgMgor
UEFTUyBoYW5kbGVOYW1lc1swXSBpcyAiZGlyIgorUEFTUyBoYW5kbGVOYW1lc1sxXSBpcyAiZmls
ZSIKK1BBU1MgY3JlYXRlRXJyb3IudG9TdHJpbmcoKSBpcyAiTm90Rm91bmRFcnJvcjogVGhlIG9i
amVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUuIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
ZmlsZXN5c3RlbWFjY2Vzcy9kaXJlY3RvcnktaGFuZGxlLWJhc2ljcy5odG1sIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uODM3M2Q4NmUzN2VlZDg1MTRmNDM3NjM0ZWZkNGUzMGE4ZjgwZmRjNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZmlsZXN5c3RlbWFjY2Vzcy9kaXJl
Y3RvcnktaGFuZGxlLWJhc2ljcy5odG1sCkBAIC0wLDAgKzEsMTAwIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRo
aXMgdGVzdCBjaGVja3MgYmFzaWMgZnVudGlvbmFsaXRpZXMgb2YgRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS4iKTsKKwordmFyIHJvb3RIYW5kbGUsIGRpckhhbmRsZSwgZmlsZUhhbmRsZSwgaXNT
YW1lRW50cnksIGhhbmRsZU5hbWVzLCBjcmVhdGVFcnJvcjsKKworZnVuY3Rpb24gZmluaXNoVGVz
dChlcnJvcikKK3sKKyAgICBpZiAoZXJyb3IpIHsKKyAgICAgICAgdGVzdEZhaWxlZChlcnJvcik7
CisgICAgfQorICAgIGZpbmlzaEpTVGVzdCgpOworfQorCitmdW5jdGlvbiBnZXREaXJlY3Rvcnko
KSB7CisgICAgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkudGhlbigoaGFuZGxlKSA9
PiB7CisgICAgICAgIHJvb3RIYW5kbGUgPSBoYW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicm9vdEhhbmRsZS5uYW1lIiwgIiIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJvb3RIYW5kbGUua2luZCIsICJkaXJlY3RvcnkiKTsKKyAgICAgICAgY3JlYXRlRGly
ZWN0b3J5SGFuZGxlKHJvb3RIYW5kbGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAg
ICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY3JlYXRlRGly
ZWN0b3J5SGFuZGxlKGZyb21IYW5kbGUpIHsKKyAgICBmcm9tSGFuZGxlLmdldERpcmVjdG9yeUhh
bmRsZSgiZGlyIiwgeyAiY3JlYXRlIiA6IHRydWUgfSkudGhlbigoaGFuZGxlKSA9PiB7CisgICAg
ICAgIGRpckhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJk
aXJIYW5kbGUubmFtZSIsICJkaXIiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJk
aXJIYW5kbGUua2luZCIsICJkaXJlY3RvcnkiKTsKKyAgICAgICAgY2hlY2tJZlNhbWVFbnRyeShy
b290SGFuZGxlLCBkaXJIYW5kbGUpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAg
ICBmaW5pc2hUZXN0KGVycm9yKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gY2hlY2tJZlNhbWVF
bnRyeShoYW5kbGUxLCBoYW5kbGUyKQoreworICAgIGhhbmRsZTEuaXNTYW1lRW50cnkoaGFuZGxl
MikudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgIGlzU2FtZUVudHJ5ID0gcmVzdWx0OworICAg
ICAgICBzaG91bGRCZUZhbHNlKCJpc1NhbWVFbnRyeSIpOworICAgICAgICBjcmVhdGVGaWxlSGFu
ZGxlKGRpckhhbmRsZSwgdHJ1ZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAg
IGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjcmVhdGVGaWxlSGFu
ZGxlKGZyb21IYW5kbGUsIGNyZWF0ZSkgeworICAgIGxldCBvcHRpb25zID0geyAiY3JlYXRlIiA6
IGNyZWF0ZSB9OworICAgIGZyb21IYW5kbGUuZ2V0RmlsZUhhbmRsZSgiZmlsZSIsIG9wdGlvbnMp
LnRoZW4oKGhhbmRsZSkgPT4geworICAgICAgICBmaWxlSGFuZGxlID0gaGFuZGxlOworICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImZpbGVIYW5kbGUubmFtZSIsICJmaWxlIik7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5raW5kIiwgImZpbGUiKTsKKyAg
ICAgICAgcmVzb2x2ZVBhdGgoKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsKKyAgICAgICAg
aWYgKGNyZWF0ZSkgeworICAgICAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgY3JlYXRlRXJyb3IgPSBlcnJvcjsKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJjcmVhdGVFcnJvci50b1N0cmluZygpIiwgIk5vdEZv
dW5kRXJyb3I6IFRoZSBvYmplY3QgY2FuIG5vdCBiZSBmb3VuZCBoZXJlLiIpOworICAgICAgICBm
aW5pc2hUZXN0KCk7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHJlc29sdmVQYXRoKCkgeworICAg
IHJvb3RIYW5kbGUucmVzb2x2ZShmaWxlSGFuZGxlKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAg
ICAgaGFuZGxlTmFtZXMgPSByZXN1bHQ7CisgICAgICAgIHNob3VsZEJlKCJoYW5kbGVOYW1lcy5s
ZW5ndGgiLCAiMiIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVz
WzBdIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImhhbmRsZU5hbWVz
WzFdIiwgImZpbGUiKTsKKyAgICAgICAgcmVtb3ZlRW50cnkoZGlySGFuZGxlLCAiZmlsZSIpOwor
ICAgIH0pLmNhdGNoKChlcnJvcikgPT4geworICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAg
ICB9KTsKK30KKworZnVuY3Rpb24gcmVtb3ZlRW50cnkoZnJvbUhhbmRsZSwgbmFtZSkgeworICAg
IGZyb21IYW5kbGUucmVtb3ZlRW50cnkobmFtZSkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAg
IC8vIE5vIGVycm9yIG1lYW5zIGl0IGlzIHJlbW92ZWQuCisgICAgICAgIGNyZWF0ZUZpbGVIYW5k
bGUoZGlySGFuZGxlLCBmYWxzZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAg
IGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitpZiAod2luZG93LnRlc3RSdW5uZXIp
IHsKKyAgICBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBnZXREaXJlY3RvcnkoKTsKK30gZWxz
ZSB7CisgICAgZmluaXNoVGVzdCgid2luZG93LnRlc3RSdW5uZXIgaXMgbm90IGF2YWlsYWJsZSIp
OworfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="commit-queue"
          id="462492"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438960</attachid>
            <date>2021-09-22 09:58:01 -0700</date>
            <delta_ts>2021-09-23 22:23:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210922095800.patch</filename>
            <type>text/plain</type>
            <size>186831</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBhNzBlMjM0MDFhNmUy
NDIzMzRiMWRjMmZkZmU1ZjdkNGRlZmIwZi4uYjQ0NjQ1YjJmMWM4ZmYyNjBjZmU4ODQwMzYwOTY2
MmJlZTQwNTRjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDIxLTA5LTIyICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudGVkIEZpbGVTeXN0ZW1IYW5kbGUgYW5kIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgKGV4Y2VwdCBkaXJlY3RvcnkgaXRlcmF0aW9uKSBpbnRl
cmZhY2VzIGZvciBPcmlnaW4gCisgICAgICAgIFByaXZhdGUgRmlsZSBTeXN0ZW0uCisgICAgICAg
IFNwZWM6IGh0dHBzOi8vd2ljZy5naXRodWIuaW8vZmlsZS1zeXN0ZW0tYWNjZXNzLyNhcGktZmls
ZXN5c3RlbWhhbmRsZQorICAgICAgICAgICAgICBodHRwczovL3dpY2cuZ2l0aHViLmlvL2ZpbGUt
c3lzdGVtLWFjY2Vzcy8jYXBpLWZpbGVzeXN0ZW1kaXJlY3RvcnloYW5kbGUKKyAgICAgICAgICAg
ICAgaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5c3RlbS1hY2Nlc3MvI3NhbmRib3hlZC1m
aWxlc3lzdGVtCisKKyAgICAgICAgVGVzdDogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVj
dG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAg
ICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZTo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkpOgorICAgICAgICAoV2ViQ29yZTo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2ZSk6CisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaDoKKyAgICAgICAgKGlz
VHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1G
aWxlSGFuZGxlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaDoKKyAgICAgICAgKGlzVHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxl
c3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rmls
ZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSk6IERlbGV0ZWQuCisgICAgICAgICogTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1IYW5kbGU6OmltcGwgY29uc3QpOgorICAgICAgICAqIE1vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpGaWxlU3lzdGVtSGFuZGxlSW1wbDo6fkZpbGVTeXN0ZW1IYW5kbGVJbXBsKToKKyAgICAgICAg
KiBNb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaDoKKyAgICAgICAgKiBNb2R1
bGVzL3N0b3JhZ2UvU3RvcmFnZUNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL3N0b3Jh
Z2UvU3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6
OmNvbm5lY3Rpb25JbmZvKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1BY2Nlc3NHZXREaXJlY3Rv
cnkpOgorICAgICAgICAqIE1vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oOgorICAgICAg
ICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3Bw
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOgorICAgICAgICAoV2ViQ29yZTo6dG9K
U05ld2x5Q3JlYXRlZCk6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0
TG9hZGVyLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaDoK
KwogMjAyMS0wOS0yMCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbQ29jb2FdIE1ha2UgQVZTYW1wbGVCdWZmZXJWaWRlb091dHB1dCBzdXBwb3J0IGFuIEV4cGVy
aW1lbnRhbCBGZWF0dXJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGIxYjlkZWI2YjVhNWFkMWY5MjMyZWU1MGE1M2Q3
NzQwNzFmNTU0N2IuLmJhOWZmNGE3NDQ3NjY0YTJjOGEwNmE0ZTNhODY0ZTk1MGY3ZDkxZTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsODggQEAKKzIwMjEtMDktMjIgIFNpaHVpIExpdSAgPHNpaHVpX2xp
dUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgRmlsZSBTeXN0
ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwNDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSW50cm9kdWNlIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlciB0byBtYW5hZ2UgZmlsZSBo
YW5kbGVzLiBFYWNoIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIGNvcnJlc3BvbmRzIHRvIGEgCisg
ICAgICAgIEZpbGVTeXN0ZW1IYW5kbGUgaW4gd2ViIHByb2Nlc3MuCisKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQ
cm9jZXNzOjpyZW1vdmVTdG9yYWdlTWFuYWdlckZvclNlc3Npb24pOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6Y29udmVydFRvRXhjZXB0aW9uQ29kZSk6CisgICAgICAgICogTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHA6IEFkZGVkLgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNTYW1lRW50
cnkpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENy
ZWF0ZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpn
ZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6
OmdldERpcmVjdG9yeUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpyZXNvbHZlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZTo6aWRlbnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlOjpwYXRoIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oOiBBZGRlZC4KKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6Z2V0SGFuZGxlKToKKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aDogQWRkZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAg
ICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0UGF0aCk6CisgICAg
ICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3NlZCk6
CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlci5oOiBBZGRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjp+TmV0d29ya1N0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbG9zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJv
bUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1h
bmFnZXI6OmlzU2FtZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OnJlbW92ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpyZXNvbHZlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
OjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3Rv
cmFnZU1hbmFnZXI6OnNlc3Npb25JRCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpjb25u
ZWN0aW9uQ2xvc2VkKToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0
b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdlUGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok9y
aWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNs
b3NlZCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVj
a2V0KToKKyAgICAgICAgKFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgor
ICAgICAgICAoV2ViS2l0OjpPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VN
YW5hZ2VyLmg6CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAg
ICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTb3Vy
Y2VzLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHkuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSk6CisgICAgICAgIChXZWJLaXQ6
OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNvbm5lY3Rpb25DbG9zZWQpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXRE
aXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpyZW1vdmVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUHJveHk6OnJlc29sdmUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmdldFBlcnNpc3RlZCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAo
V2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lzdGVkKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisK
IDIwMjEtMDktMTkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVGVhY2ggYFdlYktpdDo6Y3JlYXRlU2hhcmVhYmxlQml0bWFwYCB0byBzbmFwc2hvdCB2
aWRlbyBlbGVtZW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZjQxMTMzNGQ2YjcxNDczNzA1NzA2
Y2UwNWY0ZGM2MTA0ODdjYTc3ZS4uNTVjNTAyZDViMDk3YzM0MjIyOTVhOGUyZmQ3ZjU2ODNiNTdl
ZDA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC00MCw2ICs0MCw3IEBAIHNldChXZWJDb3JlX1BS
SVZBVEVfRlJBTUVXT1JLX0hFQURFUlMKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1GaWxlSGFuZGxlLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5
c3RlbUhhbmRsZS5oCisgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGVJbXBsLmgKICAgICBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvU3RvcmFnZU1hbmFnZXJGaWxl
U3lzdGVtQWNjZXNzLmgKIAogICAgIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwCmluZGV4IGQ5NWQ2OTI0M2Y1
MDQwOWRlMzI2ZmFhOWFjZmUwMGNhMWY2ZGEyZTEuLjNhMGNhZTg5YmRlZTUxMTBmZDQ5MTVjYmE4
ZTRjMWE1OWU3NTEzOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5
c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5j
cHAKQEAgLTI2LDQxICsyNiw2NCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJ
bXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lubGluZXMuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZSk7CiAKLVJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlPiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFt
ZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGltcGwpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpKQor
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZShTdHJp
bmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVT
eXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5h
bWUpLCBXVEZNb3ZlKGltcGwpKQogewogfQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJ
bnRlcmZhY2U8RmlsZVN5c3RlbUZpbGVIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OmdldEZpbGVIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6
Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OkdldEZpbGVPcHRpb25zPiBvcHRp
b25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxl
Pj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5vdFN1cHBv
cnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1wbCgpLmdl
dEZpbGVIYW5kbGUobmFtZSwgY3JlYXRlSWZOZWNlc3NhcnksIFtuYW1lLCBwcm9taXNlID0gV1RG
TW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0
Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3Vs
dC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShGaWxlU3lz
dGVtRmlsZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1
cm5WYWx1ZSgpKSk7CisgICAgfSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVByb21pc2VEZWZl
cnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkK
K3ZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0
IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpH
ZXREaXJlY3RvcnlPcHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJm
YWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSA9IG9wdGlvbnMgPyBvcHRpb25zLT5j
cmVhdGUgOiBmYWxzZTsKKyAgICBpbXBsKCkuZ2V0RGlyZWN0b3J5SGFuZGxlKG5hbWUsIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbbmFtZSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVz
dWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsK
KworICAgICAgICBwcm9taXNlLnJlc29sdmUoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3Jl
YXRlKFN0cmluZyB7IG5hbWUgfSwgcmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKSk7CisgICAg
fSk7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29u
c3QgU3RyaW5nJiwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpSZW1v
dmVPcHRpb25zPiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlzZSkKK3ZvaWQgRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBz
dGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OlJlbW92ZU9wdGlvbnM+IG9w
dGlvbnMsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0gICAgcHJvbWlz
ZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQi
X3MgfSk7CisgICAgYm9vbCBkZWxldGVSZWN1cnNpdmVseSA9IG9wdGlvbnMgPyBvcHRpb25zLT5y
ZWN1cnNpdmUgOiBmYWxzZTsKKyAgICBpbXBsKCkucmVtb3ZlRW50cnkobmFtZSwgZGVsZXRlUmVj
dXJzaXZlbHksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11dGFi
bGUgeworICAgICAgICBwcm9taXNlLnNldHRsZShXVEZNb3ZlKHJlc3VsdCkpOworICAgIH0pOwog
fQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29uc3QgRmlsZVN5
c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExTZXF1ZW5jZTxJRExVU1ZTdHJpbmc+
PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OnJlc29sdmUoY29u
c3QgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2VxdWVu
Y2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2Vw
dGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGlt
cGwoKS5yZXNvbHZlKGhhbmRsZS5pbXBsKCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0o
YXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigp
KQorICAgICAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0
aW9uKCkpOworCisgICAgICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZh
bHVlKCkpOworICAgIH0pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaAppbmRleCA0YWYxZDlkYjcyNDI4NDkyNDc0MjkxYWRl
ZDQ4Yzk0N2Y0MzQ1MDJiLi45MmExMmI0NzBjZTkxMGRmZGVjZDE4ZTkxZmY4ZTEzNWJmNDlkNmJh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZTsKIAot
Y2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSA6IHB1YmxpYyBGaWxlU3lzdGVtSGFuZGxl
IHsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgZmluYWwgOiBwdWJsaWMgRmlsZVN5
c3RlbUhhbmRsZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlKTsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgR2V0RmlsZU9wdGlvbnMgewpAQCAtNDYs
MTQgKzQ2LDE4IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCByZWN1cnNpdmUgeyBmYWxzZSB9Owog
ICAgIH07CiAKLSAgICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+IGNyZWF0
ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
Jik7CiAgICAgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRp
b25hbDxHZXRGaWxlT3B0aW9ucz4sIERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8Rmls
ZVN5c3RlbUZpbGVIYW5kbGU+PiYmKTsKICAgICB2b2lkIGdldERpcmVjdG9yeUhhbmRsZShjb25z
dCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RGlyZWN0b3J5T3B0aW9ucz4sIERPTVBy
b21pc2VEZWZlcnJlZDxJRExJbnRlcmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYp
OwogICAgIHZvaWQgcmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9wdGlvbmFs
PFJlbW92ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CiAgICAgdm9pZCBy
ZXNvbHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMU2Vx
dWVuY2U8SURMVVNWU3RyaW5nPj4mJik7CiAKIHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3Jl
OjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlKQorICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25z
dCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0dXJuIGhhbmRsZS5raW5k
KCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6RGlyZWN0b3J5OyB9CitTUEVD
SUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcApp
bmRleCA5ZWRjMjA0ZTE3ZWUxMzM0ZjMwNzcwZTJiYTc0NTA1OWRhNTg3MGEyLi5mMTVlMDExZDZm
NjNlNTcwMzljNmU5NDYyN2VhMjVhZDA5ZjBlMTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhh
bmRsZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgogCisjaW5jbHVkZSAiRmlsZVN5c3RlbUhhbmRsZUlt
cGwuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKQEAgLTMzLDEzICszNCwxMyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtRmlsZUhhbmRsZSk7
CiAKLVJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0
ZShTdHJpbmcmJiBuYW1lKQorUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBGaWxlU3lzdGVtRmls
ZUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4m
JiBpbXBsKQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1GaWxlSGFuZGxl
KFdURk1vdmUobmFtZSkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmls
ZUhhbmRsZShXVEZNb3ZlKG5hbWUpLCBXVEZNb3ZlKGltcGwpKSk7CiB9CiAKLUZpbGVTeXN0ZW1G
aWxlSGFuZGxlOjpGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lKQotICAgIDogRmls
ZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUp
KQorRmlsZVN5c3RlbUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmIG5h
bWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJiBpbXBsKQorICAgIDogRmlsZVN5c3RlbUhh
bmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlLCBXVEZNb3ZlKG5hbWUpLCBXVEZNb3Zl
KGltcGwpKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCmluZGV4IDBhN2ZhNGUz
OGI4YTUwNDgwZjNlMzIyNzlkYzM5OTFjMDRlM2NiOTEuLjQ4MjliYjI0MTc3OWM3NTRlYTdhNTg3
YWU2ZDFhMWU5MjcyZGQzMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCkBAIC0zNCwx
MSArMzQsMTUgQEAgY2xhc3MgRmlsZTsKIGNsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlIGZpbmFs
IDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
RmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8RmlsZVN5c3Rl
bUZpbGVIYW5kbGU+IGNyZWF0ZShTdHJpbmcmJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlZjxGaWxlU3lzdGVtRmlsZUhhbmRsZT4gY3JlYXRlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3Rl
bUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQgZ2V0RmlsZShET01Qcm9taXNlRGVmZXJyZWQ8SURM
SW50ZXJmYWNlPEZpbGU+PiYmKTsKIAogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBGaWxlU3lzdGVt
RmlsZUhhbmRsZShTdHJpbmcmJik7CisgICAgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYs
IFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKK1NQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbUZp
bGVIYW5kbGUpCisgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OkZpbGVTeXN0
ZW1IYW5kbGUmIGhhbmRsZSkgeyByZXR1cm4gaGFuZGxlLmtpbmQoKSA9PSBXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlOjpLaW5kOjpGaWxlOyB9CitTUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbUhhbmRsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUhhbmRsZS5jcHAKaW5kZXggMjEyMWIxY2MyNTE1MThiYjk1ZGYwNjk0MTFj
MjExMmI2MDg1MGZiZi4uNGFmNjExMDhiMTcxZjI2N2E0OTJmYjZlNTUwMjA0NmE2MmNkMTQwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVT
eXN0ZW1IYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFj
Y2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcApAQCAtMzMsMTUgKzMzLDIzIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1IYW5kbGUp
OwogCi1GaWxlU3lzdGVtSGFuZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSkKK0ZpbGVTeXN0ZW1IYW5kbGU6OkZpbGVTeXN0ZW1I
YW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6S2luZCBraW5kLCBTdHJpbmcmJiBuYW1lLCBSZWY8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKICAgICA6IG1fa2luZChraW5kKQogICAgICwgbV9u
YW1lKFdURk1vdmUobmFtZSkpCisgICAgLCBtX2ltcGwoV1RGTW92ZShpbXBsKSkKIHsKIH0KIAot
dm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShjb25zdCBGaWxlU3lzdGVtSGFuZGxl
JiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkKK0ZpbGVTeXN0ZW1I
YW5kbGU6On5GaWxlU3lzdGVtSGFuZGxlKCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1I
YW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGUmIGhhbmRsZSwgRE9NUHJvbWlzZURl
ZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlzZSkgY29uc3QKIHsKLSAgICBwcm9taXNlLnJlamVj
dChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsK
KyAgICBpZiAobV9raW5kICE9IGhhbmRsZS5raW5kKCkgfHwgbV9uYW1lICE9IGhhbmRsZS5uYW1l
KCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlc29sdmUoZmFsc2UpOworCisgICAgbV9pbXBs
LT5pc1NhbWVFbnRyeShoYW5kbGUuaW1wbCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSld
KGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5zZXR0bGUoV1RGTW92ZShy
ZXN1bHQpKTsKKyAgICB9KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5k
bGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
SGFuZGxlLmgKaW5kZXggNzU0ZTQ5NDE5YmI2MzdmMTdmMDdmZDgwMzE5OWYyMjE4Mjc2OTk3YS4u
ZTVjZjcwMjNhNjk1OWQ2OGQzOTU0MWYwNjcwNzZlZDczYmY2ZmVhNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhh
bmRsZS5oCkBAIC0zMSwyOSArMzEsMzIgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxh
dGU8dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKKworY2xhc3MgRmlsZVN5c3Rl
bUhhbmRsZUltcGw7CiBlbnVtIGNsYXNzIFBlcm1pc3Npb25TdGF0ZSA6IHVpbnQ4X3Q7CiAKIGNs
YXNzIEZpbGVTeXN0ZW1IYW5kbGUgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlU3lzdGVtSGFuZGxl
PiB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGaWxlU3lzdGVtSGFuZGxlKTsKIHB1Ymxp
YzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFuZGxlKCk7CisKICAgICBlbnVtIGNsYXNzIEtp
bmQgOiB1aW50OF90IHsKICAgICAgICAgRmlsZSwKICAgICAgICAgRGlyZWN0b3J5CiAgICAgfTsK
LQotICAgIHZpcnR1YWwgfkZpbGVTeXN0ZW1IYW5kbGUoKSA9IGRlZmF1bHQ7Ci0KICAgICBLaW5k
IGtpbmQoKSBjb25zdCB7IHJldHVybiBtX2tpbmQ7IH0KICAgICBjb25zdCBTdHJpbmcmIG5hbWUo
KSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KKyAgICBGaWxlU3lzdGVtSGFuZGxlSW1wbCYgaW1w
bCgpIGNvbnN0IHsgcmV0dXJuIG1faW1wbC5nZXQoKTsgfQogCi0gICAgdm9pZCBpc1NhbWVFbnRy
eShjb25zdCBGaWxlU3lzdGVtSGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+
JiYpOworICAgIHZvaWQgaXNTYW1lRW50cnkoRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VE
ZWZlcnJlZDxJRExCb29sZWFuPiYmKSBjb25zdDsKIAogcHJvdGVjdGVkOgotICAgIEZpbGVTeXN0
ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSk7CisgICAgRmlsZVN5c3RlbUhhbmRsZShLaW5k
LCBTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogCiBwcml2YXRl
OgogICAgIEtpbmQgbV9raW5kIHsgS2luZDo6RmlsZSB9OwogICAgIFN0cmluZyBtX25hbWU7Cisg
ICAgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBtX2ltcGw7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1h
Y2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGwKaW5kZXggMjA4ZTc0NWNjM2JmYzRjNzk3
NmVjMDI4ZTFiNGRkNjJhYWZkMDMwOC4uOWJkMDEwMDExYmYzYzVjODc3ZGU2ODNkNmFhODE2ZGJl
YWExMGZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbApAQCAtMjksNiArMjksNyBAQCBlbnVt
IEZpbGVTeXN0ZW1IYW5kbGVLaW5kIHsKIH07CiAKIFsKKyAgICBDdXN0b21Ub0pTT2JqZWN0LAog
ICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEVuYWJsZWRCeVNldHRpbmc9RmlsZVN5
c3RlbUFjY2VzcywKICAgICBTZWN1cmVDb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNkOGRhNDIyN2NlMGNjN2YwYzFmMGIyNWQ4ZDZhMGEwNzA0MzBlZDYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3Mv
RmlsZVN5c3RlbUhhbmRsZUltcGwuaApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3By
YWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOworY2xhc3Mg
RmlsZVN5c3RlbUZpbGVIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9u
T3I7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsIDogcHVibGljIFJlZkNvdW50ZWQ8Rmls
ZVN5c3RlbUhhbmRsZUltcGw+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlU3lzdGVtSGFu
ZGxlSW1wbCgpIHsgfQorICAgIHZpcnR1YWwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gc3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGlzU2FtZUVudHJ5KEZp
bGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25Pcjxi
b29sPiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRGaWxlSGFuZGxlKGNvbnN0IFN0
cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+PiYmKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29s
IGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJl
ZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJl
bW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCByZWN1cnNpdmUsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgcmVzb2x2ZShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
RXhjZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSA9IDA7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2Uv
RHVtbXlTdG9yYWdlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9E
dW1teVN0b3JhZ2VQcm92aWRlci5oCmluZGV4IDkxNDRhM2Q3YTM0NGEwYzhiMzFmOTRiNjZhZjA4
Nzg3MmU3MTBjNmEuLjlmOTA3ZjAxZDU3MTA2YzMwZGZmNGFmZGViYjU3MzY3MDRjYjIyNTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQcm92
aWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9EdW1teVN0b3JhZ2VQ
cm92aWRlci5oCkBAIC00MiwxNSArNDIsMjAgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IER1bW15U3RvcmFnZUNvbm5lY3Rpb24oKSk7CiAgICAgICAgIH0KIAot
ICAgICAgICB2b2lkIHBlcnNpc3RlZChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgdm9pZCBnZXRQZXJzaXN0
ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoZmFsc2UpOwogICAgICAgICB9CiAKLSAgICAgICAgdm9pZCBwZXJzaXN0KENsaWVudE9yaWdp
biYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
ICAgICAgICB2b2lkIHBlcnNpc3QoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICAgICAgewogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwogICAgICAgICB9CisKKyAgICAgICAgdm9pZCBm
aWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgeworICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7CisgICAgICAgIH0KICAgICB9
OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25uZWN0aW9uKCkgZmluYWwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgK
aW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2OGM3NTUzMy4uMGE0MDA3M2I0
ZGNlOGFiOTUzNDYzZTA1OGNhZDRhODcyZTFiZTY5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgKQEAgLTI1LDE4ICsyNSwyMiBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3RlbXBsYXRlPHR5cGVuYW1lPiBj
bGFzcyBFeGNlcHRpb25PcjsKKwogc3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3RvcmFn
ZUNvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewogcHVi
bGljOgogICAgIHZpcnR1YWwgflN0b3JhZ2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwotICAgIHZp
cnR1YWwgdm9pZCBwZXJzaXN0ZWQoQ2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4m
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBnZXRQZXJzaXN0ZWQoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0KGNvbnN0IENsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25zdCBDbGllbnRPcmlnaW4mLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFJlZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
Pj4mJik+JiYpID0gMDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCmluZGV4IGZiNTRm
OTgwYTM1NTAyYmMxNjMzMmY3NzdmMTgyZWJhZjE1NzMwOWUuLmRjZWY5ODIwOGNlY2EwZmNiMzA2
ZWZkYmU5ODI3YjIxZTdiZDNkOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9z
dG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtMjcsOCArMjcsMTAgQEAKICNpbmNsdWRlICJT
dG9yYWdlTWFuYWdlci5oIgogCiAjaW5jbHVkZSAiQ2xpZW50T3JpZ2luLmgiCisjaW5jbHVkZSAi
RXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCiAj
aW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNlLmgiCiAjaW5jbHVkZSAi
U2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpAQCAt
NDcsNTMgKzQ5LDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFuYWdlcihOYXZpZ2F0b3JC
YXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3RlZChE
T01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQorc3RydWN0IFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbyB7CisgICAgU3RvcmFnZUNvbm5lY3Rpb24mIGNvbm5lY3Rp
b247CisgICAgQ2xpZW50T3JpZ2luIG9yaWdpbjsKK307CisKK0V4Y2VwdGlvbk9yPFN0b3JhZ2VN
YW5hZ2VyOjpDb25uZWN0aW9uSW5mbz4gU3RvcmFnZU1hbmFnZXI6OmNvbm5lY3Rpb25JbmZvKCkK
IHsKICAgICBpZiAoIW1fbmF2aWdhdG9yKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3Qo
RXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJOYXZpZ2F0b3IgZG9lcyBub3QgZXhpc3Qi
X3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIk5h
dmlnYXRvciBkb2VzIG5vdCBleGlzdCJfcyB9OwogCiAgICAgYXV0byBjb250ZXh0ID0gbV9uYXZp
Z2F0b3ItPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBpZiAoIWNvbnRleHQpCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
IlRoZSBjb250ZXh0IGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgaW52YWxpZCJfcyB9OwogCisgICAgYXV0
byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKKyAgICBpZiAoIW9yaWdpbikK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlz
IGludmFsaWQiX3MgfTsKKyAgICAKICAgICBhdXRvIGNvbm5lY3Rpb24gPSBjb250ZXh0LT5zdG9y
YWdlQ29ubmVjdGlvbigpOwogICAgIGlmICghY29ubmVjdGlvbikKLSAgICAgICAgcmV0dXJuIHBy
b21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbm5lY3Rp
b24gaXMgaW52YWxpZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiQ29ubmVjdGlvbiBpcyBpbnZhbGlkIl9zIH07CiAKLSAgICBhdXRvKiBvcmln
aW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAgIGlmICghb3JpZ2luKQotICAgICAg
ICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJP
cmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKKyAgICByZXR1cm4gQ29ubmVjdGlvbkluZm8geyAqY29u
bmVjdGlvbiwgeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdpbi0+ZGF0YSgpIH0g
fTsKK30KKwordm9pZCBTdG9yYWdlTWFuYWdlcjo6cGVyc2lzdGVkKERPTVByb21pc2VEZWZlcnJl
ZDxJRExCb29sZWFuPiYmIHByb21pc2UpCit7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uID0gY29ubmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5l
Y3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKIAotICAgIHJldHVybiBj
b25uZWN0aW9uLT5wZXJzaXN0ZWQoeyBjb250ZXh0LT50b3BPcmlnaW4oKS5kYXRhKCksIG9yaWdp
bi0+ZGF0YSgpIH0sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCBwZXJzaXN0ZWQp
IG11dGFibGUgeworICAgIGF1dG8gY29ubmVjdGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhj
ZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rp
b24uZ2V0UGVyc2lzdGVkKGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBXVEZNb3Zl
KHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21pc2UucmVz
b2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJz
aXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHByb21pc2UpCiB7Ci0gICAgaWYg
KCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7
IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH0pOworICAg
IGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25JbmZvKCk7CisgICAg
aWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24uaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJl
dHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VFeGNl
cHRpb24oKSk7CiAKLSAgICBhdXRvIGNvbnRleHQgPSBtX25hdmlnYXRvci0+c2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpOwotICAgIGlmICghY29udGV4dCkKLSAgICAgICAgcmV0dXJuIHByb21pc2Uu
cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlIGNvbnRleHQgaXMgaW52
YWxpZCJfcyB9KTsKLQotICAgIGF1dG8gY29ubmVjdGlvbiA9IGNvbnRleHQtPnN0b3JhZ2VDb25u
ZWN0aW9uKCk7Ci0gICAgaWYgKCFjb25uZWN0aW9uKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJUaGUgY29ubmVjdGlvbiBpcyBp
bnZhbGlkIl9zIH0pOwotCi0gICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmln
aW4oKTsKLSAgICBpZiAoIW9yaWdpbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4
Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfSk7Ci0K
LSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdCh7IGNvbnRleHQtPnRvcE9yaWdpbigpLmRh
dGEoKSwgb3JpZ2luLT5kYXRhKCkgfSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29s
IHBlcnNpc3RlZCkgbXV0YWJsZSB7CisgICAgYXV0byBjb25uZWN0aW9uSW5mbyA9IGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgY29ubmVjdGlvbklu
Zm8uY29ubmVjdGlvbi5wZXJzaXN0KGNvbm5lY3Rpb25JbmZvLm9yaWdpbiwgW3Byb21pc2UgPSBX
VEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkgbXV0YWJsZSB7CiAgICAgICAgIHByb21p
c2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwogfQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2Vy
OjpmaWxlU3lzdGVtQWNjZXNzR2V0RGlyZWN0b3J5KERPTVByb21pc2VEZWZlcnJlZDxJRExJbnRl
cmZhY2U8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICByZXR1
cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJOb3QgaW1w
bGVtZW50ZWQiX3MgfSk7CisgICAgYXV0byBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uID0gY29u
bmVjdGlvbkluZm8oKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JF
eGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgIGF1dG8gY29ubmVjdGlvbkluZm8g
PSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgIGNv
bm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25uZWN0aW9u
SW5mby5vcmlnaW4sIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byByZXN1bHQpIG11
dGFibGUgeworICAgICAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAg
cmV0dXJuIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworCisgICAg
ICAgIHByb21pc2UucmVzb2x2ZShyZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCkpOworICAgIH0p
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oCmluZGV4IDQ1ZDdiOGMxNmFkYTVmNDA1ODQ4Nzc4
MDU4ODU3OGZkYzdiN2YxYTguLmQ3MWRhNTdlMjcyYjRmY2UwODI5NTI4NGE3MjdmZTJiMjQ5ODdl
MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdl
ci5oCkBAIC0zMSw5ICszMSwxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CiBjbGFzcyBOYXZpZ2F0b3JCYXNlOwogdGVtcGxhdGU8
dHlwZW5hbWU+IGNsYXNzIERPTVByb21pc2VEZWZlcnJlZDsKLWNsYXNzIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGU7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgRXhjZXB0aW9uT3I7CiAKIGNs
YXNzIFN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIFJlZkNvdW50ZWQ8U3RvcmFnZU1hbmFnZXI+IHsK
ICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFN0b3JhZ2VNYW5hZ2VyKTsKQEAgLTQ1LDcgKzQ2
LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFN0b3JhZ2VNYW5hZ2VyKE5h
dmlnYXRvckJhc2UmKTsKLQorICAgIHN0cnVjdCBDb25uZWN0aW9uSW5mbzsKKyAgICBFeGNlcHRp
b25PcjxDb25uZWN0aW9uSW5mbz4gY29ubmVjdGlvbkluZm8oKTsKICAgICBXZWFrUHRyPE5hdmln
YXRvckJhc2U+IG1fbmF2aWdhdG9yOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
U291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAppbmRleCBkODBiZDMyY2U3
MGQ2ZmU2ZjE1Yjk5YTI5ZWVlODUyNTk3NmRiYTZhLi41MmUxYWJhYTQ5MDgzNWM0YmM0YWM3NDAy
N2QzYWRjMDU1YTllM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAtNDg4LDYgKzQ4OCw3IEBAIGJpbmRp
bmdzL2pzL0pTRXhlY1N0YXRlLmNwcAogYmluZGluZ3MvanMvSlNFeHRlbmRhYmxlTWVzc2FnZUV2
ZW50Q3VzdG9tLmNwcAogYmluZGluZ3MvanMvSlNGZXRjaEV2ZW50Q3VzdG9tLmNwcAogYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwCitiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0
ZW1IYW5kbGVDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxBbGxDb2xsZWN0aW9uQ3VzdG9t
LmNwcAogYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAKIGJpbmRpbmdz
L2pzL0pTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzBiMDQwOWIzZWYxNmZhMGFkOGZm
NWM4ZmZjNWJhYTUzYzk2MTAzYS4uNjAxNzI4OTcxZGQ0ZDQwZGY0ZjQyNTYwZDYzODg3ZTBjMTEw
ZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMjgxOCw2ICsyODE4LDcgQEAKIAkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlG
IC8qIENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTMw
QUFDOUYyNTBFRDQwOTAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwQUFDOUQyNTBFRDQwOTAwMTNE
QTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5oICovOyB9OwogCQk5MzBBQUNBMjI1MEVENDExMDAx
M0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQ0EwMjUwRUQ0MTEwMDEzREE5RiAvKiBKU0NTU0dyb3Vw
aW5nUnVsZS5oICovOyB9OworCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3Rl
bUhhbmRsZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzMTUzQkRB
MTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5nIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JEOTE0MTgxRjdBMDBGQ0Y1QkUg
LyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLzsgfTsKIAkJOTMxNTNCREMxNDE5NTlCQzAwRkNGNUJF
IC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCREIxNDE5NTlCQjAwRkNGNUJFIC8qIHRleHRBcmVh
UmVzaXplQ29ybmVyLnBuZyAqLzsgfTsKIAkJOTMxNTNCRTIxNDE5NUE1NzAwRkNGNUJFIC8qIG1p
c3NpbmdJbWFnZS5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nICovOyB9
OwpAQCAtMjg3MCw5ICsyODcxLDkgQEAKIAkJOTM0M0NCODIxMkYyNUU1MTAwMzNDNUVFIC8qIFRl
eHRDb2RlY1VURjguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzNDNDQjgwMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggKi87IH07CiAJ
CTkzNDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0NDJDOUQwRDJC
MzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTkzNDQz
RTg1MjZFOTk1QkIwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNDQzRTdEMjZF
OEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLzsgfTsK
LQkJOTM0NDNFODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0
MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IH07Ci0J
CTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCRDYyNkRENjI1
QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi87IH07Ci0JCTkzNDQzRTg4MjZF
OTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmls
ZVN5c3RlbUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NjI2RTk5NUJEMDA1ODUzOEYgLyogRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMyQzlCRDQyNkRENjI1QTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ2
MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNDQzRTg4MjZFOTk1QzQwMDU4
NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJEQTI2REQ2MjYxMDA1M0IzREIgLyogRmlsZVN5c3RlbUhh
bmRsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTkzNDkwN0U0MTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTA3RTMxMjVCQkJDODAw
N0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTM0OTUwQ0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVj
aFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLzsg
fTsKIAkJOTM0OTUwQ0UyNTM5NDM2NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJu
YXRpdmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NDk1MEJDMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmgg
Ki87IH07CkBAIC0xMTY5NSw2ICsxMTY5Niw4IEBACiAJCTkzMTZEREY4MjQwQzY0QjMwMDkzNDBB
QSAvKiBTaW1wbGVSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaW1w
bGVSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzE2RERGQTI0MEM2NEIz
MDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU2ltcGxlUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5
MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBCb3VuZGFyeVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtSGFuZGxlSW1w
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMUJERDI2RjdFRDA5MDA4MUE3
RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTkzMUFFM0I4MUZCODBFQUUwMEY1RUZCMiAvKiBKU1ZhbHVlSW5XcmFwcGVkT2JqZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJOTMxQkNDNjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0
ZW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhblN0YXJ0TGlz
dGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxQ0JEMDYxNjFBNDRFOTAw
RTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtMjMwMzYsNiArMjMwMzksNyBAQAogCQkJCTQ2QjYzRjZCMUM2RThDREYwMDJF
OTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCiAJCQkJNDEzMUYzQjExRjk1NTI4MTAw
NTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCiAJCQkJODM1QjY4MEUxRjU0OEJE
RTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk5MzFBMUJE
RDI2RjdFRDA5MDA4MUE3RTUgLyogSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcCAqLywKIAkJ
CQk4NEJCRTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5j
cHAgKi8sCiAJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1l
bnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxD
b2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKQEAgLTIzMzY4LDYgKzIzMzcyLDcgQEAKIAkJCQk5MzJD
OUJEMDI2REQ2MjU1MDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5jcHAgKi8sCiAJCQkJOTMy
QzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLywKIAkJCQk5MzJD
OUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRsZS5pZGwgKi8sCisJCQkJOTMx
QTA3NTgyNkYxQjQ0RjAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggKi8sCiAJCQkJ
OTM0NDNFN0IyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyK0ZpbGVTeXN0ZW1BY2Nl
c3MuaWRsICovLAogCQkJCTkzNDQzRTdEMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9yYWdlTWFuYWdl
ckZpbGVTeXN0ZW1BY2Nlc3MuaCAqLywKIAkJCSk7CkBAIC0zMjQ0NCw2ICszMjQ0OSw3IEBACiAJ
CQkJODNGQjMzNzUxRjUwOEE1QjAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzNDQzRTg3MjZFOTk1QzAwMDU4NTM4RiAvKiBGaWxlU3lzdGVtRmls
ZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM0NDNFODgyNkU5OTVDNDAwNTg1MzhGIC8q
IEZpbGVTeXN0ZW1IYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTJCQUQ5MjZGM0FDOUEw
MEZEREY1RiAvKiBGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1
RUI2OUYwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NzEyQkU0ODMxRkU4NjVERDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4NDVFNzJGODBGRDI2MUVFMDBBODdENzkgLyogRmlsdGVyLmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVD
dXN0b20uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyY2RlZTE1Njc1NjI0MjNiYTdlNjE4NWExMGE3NjcyN2U2
NTc4ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Zp
bGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtSGFuZGxlLmgiCisKKyNp
bmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5jbHVkZSAiRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKKyNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1GaWxlSGFu
ZGxlLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpK
U0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNET01HbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgRmlsZVN5c3RlbUhhbmRsZSYgaGFuZGxlKQoreworICAgIHJldHVybiB3cmFw
KGxleGljYWxHbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdCwgaGFuZGxlKTsKK30KKworSlNDOjpK
U1ZhbHVlIHRvSlNOZXdseUNyZWF0ZWQoSlNDOjpKU0dsb2JhbE9iamVjdCosIEpTRE9NR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFJlZjxGaWxlU3lzdGVtSGFuZGxlPiYmIGhhbmRsZSkKK3sK
KyAgICBpZiAoaXM8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oaGFuZGxlLmdldCgpKSkKKyAg
ICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4oZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGhhbmRsZSkpOworCisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8
RmlsZVN5c3RlbUZpbGVIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKK30K
KworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1
bGVTY3JpcHRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oCmluZGV4IDk2MzkwYTA4MGU2MTE0OWRjMTZjYjg2ZWI5YTkwOGVhYjBl
MTk2YjYuLjg0NmUyMzg1MzEwODJjYjEyZjRjMDFiYjMwODc0ODJhZjY5NmVkMDYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRl
ci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk1vZHVsZVNj
cmlwdExvYWRlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgIlNjcmlwdEJ1ZmZlci5oIgogI2luY2x1ZGUgIldvcmtlclNjcmlwdEZldGNoZXIuaCIK
ICNpbmNsdWRlICJXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCmluZGV4IDdjNThhNDZjMjQy
MDU4MjBhYjAxMDljMWU1M2NjNmRlYWRiZWJmODguLmE3Nzc0ZWRjNGVmMmQ5MGZkZWQwZTA0Mjhm
Y2E3NDg1NGY5NWVkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VySm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJKb2IuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJKb2JDbGll
bnQuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VySm9iRGF0YS5oIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCBjMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5Li5jY2M0ZDc0NDg2YTA2OGFiNWIyZjFmYjg1ZGY1
ZDVjMjE2MGQ3NmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcApAQCAtNDYxLDcgKzQ2MSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFk
ZFN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0
CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3Zl
KHNlc3Npb25JRCk7CisgICAgaWYgKGF1dG8gbWFuYWdlciA9IG1fc3RvcmFnZU1hbmFnZXJzLnRh
a2Uoc2Vzc2lvbklEKSkKKyAgICAgICAgbWFuYWdlci0+Y2xvc2UoKTsKIH0KIAogdm9pZCBOZXR3
b3JrUHJvY2Vzczo6Zm9yRWFjaE5ldHdvcmtTZXNzaW9uKGNvbnN0IEZ1bmN0aW9uPHZvaWQoTmV0
d29ya1Nlc3Npb24mKT4mIGZ1bmN0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kZGZmZTIyYTllOGRjYzViODZjZjI3NDEzZWQ1YWRlZTQ0YTFhM2ZhCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3IuaApAQCAtMCwwICsxLDcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDxXZWJDb3JlL0V4Y2VwdGlvbkNvZGUuaD4KKyNpbmNsdWRlIDx3dGYvRW51
bVRyYWl0cy5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBjbGFzcyBGaWxlU3lzdGVt
U3RvcmFnZUVycm9yIDogdWludDhfdCB7CisgICAgRmlsZU5vdEZvdW5kLAorICAgIEludmFsaWRO
YW1lLAorICAgIEludmFsaWRNb2RpZmljYXRpb24sCisgICAgVHlwZU1pc21hdGNoLAorICAgIFVu
a25vd24KK307CisKK2lubGluZSBXZWJDb3JlOjpFeGNlcHRpb25Db2RlIGNvbnZlcnRUb0V4Y2Vw
dGlvbkNvZGUoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciBlcnJvcikKK3sKKyAgICBzd2l0Y2ggKGVy
cm9yKSB7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQ6Cisg
ICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpOb3RGb3VuZEVycm9yOworICAg
IGNhc2UgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52YWxpZE1vZGlmaWNhdGlvbjoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OkludmFsaWRNb2RpZmljYXRpb25FcnJv
cjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRjaDoKKyAgICAg
ICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlR5cGVFcnJvcjsKKyAgICBkZWZhdWx0
OgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9uQ29kZTo6VW5rbm93bkVycm9yOwor
ICAgIH0KK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKK25hbWVzcGFjZSBXVEYgeworCit0
ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4geworICAgIHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYktpdDo6Rmls
ZVN5c3RlbVN0b3JhZ2VFcnJvciwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpGaWxlTm90Rm91bmQsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6SW52YWxpZE5hbWUsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6
SW52YWxpZE1vZGlmaWNhdGlvbiwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2gsCisgICAgICAgIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cjo6VW5rbm93bgorICAgID47Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5YmQ4YTcyYWEyYzA1ZDQ4MTA2YWQ0ZmFk
M2UwMGY2YTU1NDIzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCkBAIC0wLDAgKzEsMTQy
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgi
CisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCisKK25hbWVzcGFjZSBXZWJL
aXQgeworCisjaWYgT1MoV0lORE9XUykKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAn
XFwnOworI2Vsc2UKK2NvbnN0ZXhwciBjaGFyIHBhdGhTZXBhcmF0b3IgPSAnLyc7CisjZW5kaWYK
KworRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKEZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlciYgbWFuYWdlciwgVHlwZSB0eXBlLCBTdHJpbmcmJiBwYXRoLCBT
dHJpbmcmJiBuYW1lKQorICAgIDogbV9pZGVudGlmaWVyKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllcjo6Z2VuZXJhdGVUaHJlYWRTYWZlKCkpCisgICAgLCBtX21hbmFnZXIobWFrZVdl
YWtQdHIobWFuYWdlcikpCisgICAgLCBtX3R5cGUodHlwZSkKKyAgICAsIG1fcGF0aChXVEZNb3Zl
KHBhdGgpKQorICAgICwgbV9uYW1lKFdURk1vdmUobmFtZSkpCit7CisgICAgQVNTRVJUKCFtX3Bh
dGguaXNFbXB0eSgpKTsKKworICAgIHN3aXRjaCAobV90eXBlKSB7CisgICAgY2FzZSBGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBGaWxlU3lzdGVtOjpt
YWtlQWxsRGlyZWN0b3JpZXMobV9wYXRoKTsKKyAgICAgICAgcmV0dXJuOworICAgIGNhc2UgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGU6CisgICAgICAgIGlmIChGaWxlU3lzdGVt
OjpmaWxlRXhpc3RzKG1fcGF0aCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGF1dG8g
aGFuZGxlID0gRmlsZVN5c3RlbTo6b3BlbkZpbGUobV9wYXRoLCBGaWxlU3lzdGVtOjpGaWxlT3Bl
bk1vZGU6OldyaXRlKTsKKyAgICAgICAgRmlsZVN5c3RlbTo6Y2xvc2VGaWxlKGhhbmRsZSk7Cisg
ICAgfQorfQorCitib29sIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBhdXRvIHBh
dGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYgKHBhdGguaXNFbXB0
eSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gbV9wYXRoID09IHBhdGg7
Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlcXVlc3RDcmVhdGVI
YW5kbGUoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uLCBUeXBlIHR5cGUsIFN0
cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgaWYgKG1fdHlwZSAh
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5KQorICAgICAgICByZXR1
cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsK
KworICAgIGlmICghbV9tYW5hZ2VyKQorICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmls
ZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICAvLyBodHRwczovL3dpY2cuZ2l0
aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jdmFsaWQtZmlsZS1uYW1lCisgICAgaWYgKG5hbWUg
PT0gIi4iIHx8IG5hbWUgPT0gIi4uIiB8fCBuYW1lLmNvbnRhaW5zKHBhdGhTZXBhcmF0b3IpKQor
ICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6SW52
YWxpZE5hbWUpOworCisgICAgYXV0byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5n
Q29tcG9uZW50KG1fcGF0aCwgbmFtZSk7CisgICAgcmV0dXJuIG1fbWFuYWdlci0+Y3JlYXRlSGFu
ZGxlKGNvbm5lY3Rpb24sIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUobmFtZSksIGNyZWF0
ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6
Z2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIFN0cmlu
ZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgcmV0dXJuIHJlcXVlc3RD
cmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZp
bGUsIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKK30KKworRXhwZWN0ZWQ8Rmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6Z2V0RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlv
bjo6VW5pcXVlSUQgY29ubmVjdGlvbiwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vz
c2FyeSkKK3sKKyAgICByZXR1cm4gcmVxdWVzdENyZWF0ZUhhbmRsZShjb25uZWN0aW9uLCBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBXVEZNb3ZlKG5hbWUpLCBjcmVh
dGVJZk5lY2Vzc2FyeSk7Cit9CisKK3N0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJv
cj4gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFt
ZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkKK3sKKyAgICBpZiAobV90eXBlICE9IFR5cGU6OkRp
cmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNt
YXRjaDsKKworICAgIGF1dG8gcGF0aCA9IEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBv
bmVudChtX3BhdGgsIG5hbWUpOworICAgIGF1dG8gdHlwZSA9IEZpbGVTeXN0ZW06OmZpbGVUeXBl
KHBhdGgpOworICAgIGlmICghdHlwZSkKKyAgICAgICAgcmV0dXJuIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I6OlR5cGVNaXNtYXRjaDsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcj4gcmVzdWx0OworICAgIHN3aXRjaCAodHlwZS52YWx1ZSgpKSB7CisgICAgY2FzZSBG
aWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcjoKKyAgICAgICAgaWYgKCFGaWxlU3lzdGVtOjpk
ZWxldGVGaWxlKHBhdGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcjo6VW5rbm93bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBGaWxlU3lzdGVtOjpGaWxl
VHlwZTo6RGlyZWN0b3J5OgorICAgICAgICBpZiAoIWRlbGV0ZVJlY3Vyc2l2ZWx5KSB7CisgICAg
ICAgICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUVtcHR5RGlyZWN0b3J5KHBhdGgpKQorICAg
ICAgICAgICAgICAgIHJlc3VsdCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd247Cisg
ICAgICAgIH0gZWxzZSBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KHBh
dGgpKQorICAgICAgICAgICAgcmVzdWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bjsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitFeHBlY3Rl
ZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGU6OnJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIpCit7CisgICAgaWYgKCFtX21hbmFnZXIpCisgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8gcGF0aCA9
IG1fbWFuYWdlci0+Z2V0UGF0aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkp
CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpV
bmtub3duKTsKKworICAgIGlmICghcGF0aC5zdGFydHNXaXRoKG1fcGF0aCkpCisgICAgICAgIHJl
dHVybiBWZWN0b3I8U3RyaW5nPiB7IH07CisKKyAgICBhdXRvIHJlc3RQYXRoID0gcGF0aC5zdWJz
dHJpbmcobV9wYXRoLmxlbmd0aCgpKTsKKyAgICByZXR1cm4gcmVzdFBhdGguc3BsaXQocGF0aFNl
cGFyYXRvcik7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iMjE5OGRhMjExYjgxZTIzNDI4ODE1Y2FlNGE1MjhmZjdjYWY1
NGE3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIkZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgorCisjaW5jbHVkZSA8d3RmL1dlYWtQ
dHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjsKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3Q7CisKK2Ns
YXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4g
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIGVudW0gY2xhc3Mg
VHlwZSA6IGJvb2wgeyBGaWxlLCBEaXJlY3RvcnkgfTsKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZShGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXImLCBUeXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJp
bmcmJiBuYW1lKTsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVu
dGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgY29uc3QgU3RyaW5n
JiBwYXRoKCkgY29uc3QgeyByZXR1cm4gbV9wYXRoOyB9CisKKyAgICBib29sIGlzU2FtZUVudHJ5
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgRXhwZWN0ZWQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBnZXRG
aWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wg
Y3JlYXRlSWZOZWNlc3NhcnkpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGlyZWN0b3J5SGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNl
c3NhcnkpOworICAgIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVtb3Zl
RW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5KTsKKyAgICBF
eHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzb2x2ZShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEV4cGVj
dGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBUeXBl
LCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKKworICAgIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgV2Vha1B0cjxGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI+IG1fbWFuYWdlcjsKKyAgICBUeXBlIG1fdHlwZTsKKyAgICBT
dHJpbmcgbV9wYXRoOworICAgIFN0cmluZyBtX25hbWU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NDI3MTdlNzFkZDg5YWE2NDEyNjJlOGM1MTQ5MjMwNWVkZDNhMjM4Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25h
bWVzcGFjZSBXZWJLaXQgeworCitlbnVtIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
clR5cGUgeyB9OwordXNpbmcgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyID0gT2Jq
ZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPjsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2UyMzliN2M0ZWUzMDIyYzBhN2Q5NTc1NmUyZmRkNTRh
MDYzNDU1NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcApAQCAtMCwwICsxLDU2
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkoKSA9IGRlZmF1bHQ7CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6
cmVnaXN0ZXJIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJiBoYW5kbGUpCit7CisgICAgQVNTRVJUKCFtX2hh
bmRsZXMuY29udGFpbnMoaWRlbnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLmFkZChpZGVudGlm
aWVyLCBtYWtlV2Vha1B0cihoYW5kbGUpKTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5Ojp1bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyKQoreworICAgIEFTU0VSVChtX2hhbmRsZXMuY29udGFpbnMoaWRl
bnRpZmllcikpOworCisgICAgbV9oYW5kbGVzLnJlbW92ZShpZGVudGlmaWVyKTsKK30KKworRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk6Omdl
dEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sK
KyAgICBpZiAoYXV0byBoYW5kbGUgPSBtX2hhbmRsZXMuZ2V0KGlkZW50aWZpZXIpKQorICAgICAg
ICByZXR1cm4gaGFuZGxlLmdldCgpOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNmNjNDNjM2FmZjZjMTFjZWYxM2JjM2NjN2YwZjI4ODAyMzI1MDdi
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaApAQCAtMCwwICsxLDQ5IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8d3RmL1dl
YWtQdHIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5IHsKKyAgICBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5KCk7CisgICAgdm9pZCByZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlJik7CisgICAgdm9pZCB1
bnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUqIGdldEhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIpOworCitwcml2YXRlOgorICAgIEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBXZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5k
bGVzOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzNiOWJhMTA5MWRjNDc4ODUzNTg5NWQ0Y2NmYTNhMzM2
MmRhYTdiNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0wLDAgKzEsMTA3IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlci5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeSYgcmVnaXN0cnkpCisgICAgOiBtX3BhdGgoV1RGTW92ZShwYXRoKSkKKyAgICAsIG1fcmVn
aXN0cnkocmVnaXN0cnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7Cit9CisK
K0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6fkZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcigpCit7
CisgICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBmb3IgKGF1dG8gaWRlbnRp
ZmllciA6IG1faGFuZGxlcy5rZXlzKCkpCisgICAgICAgIG1fcmVnaXN0cnkudW5yZWdpc3Rlckhh
bmRsZShpZGVudGlmaWVyKTsKK30KKworRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXI6OmNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYm
IG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpCit7CisgICAgQVNTRVJUKCFSdW5Mb29wOjpp
c01haW4oKSk7CisKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBtYWtl
VW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKTsKKworICAgIGF1dG8g
ZmlsZUV4aXN0cyA9IEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMocGF0aCk7CisgICAgaWYgKCFjcmVh
dGVJZk5lY2Vzc2FyeSAmJiAhZmlsZUV4aXN0cykKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVj
dGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3VuZCk7CisKKyAgICBpZiAoZmls
ZUV4aXN0cykgeworICAgICAgICBhdXRvIGV4aXN0aW5nRmlsZVR5cGUgPSBGaWxlU3lzdGVtOjpm
aWxlVHlwZShwYXRoKTsKKyAgICAgICAgaWYgKCFleGlzdGluZ0ZpbGVUeXBlKQorICAgICAgICAg
ICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24p
OworCisgICAgICAgIGF1dG8gZXhpc3RpbmdIYW5kbGVUeXBlID0gKGV4aXN0aW5nRmlsZVR5cGUu
dmFsdWUoKSA9PSBGaWxlU3lzdGVtOjpGaWxlVHlwZTo6UmVndWxhcikgPyBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6VHlwZTo6RmlsZSA6IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpUeXBlOjpE
aXJlY3Rvcnk7CisgICAgICAgIGlmIChleGlzdGluZ0hhbmRsZVR5cGUgIT0gdHlwZSkKKyAgICAg
ICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBl
TWlzbWF0Y2gpOworICAgIH0KKworICAgIGF1dG8gbmV3SGFuZGxlID0gbWFrZVVuaXF1ZTxGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZT4oKnRoaXMsIHR5cGUsIFdURk1vdmUocGF0aCksIFdURk1vdmUo
bmFtZSkpOworICAgIGF1dG8gbmV3SGFuZGxlSWRlbnRpZmllciA9IG5ld0hhbmRsZS0+aWRlbnRp
ZmllcigpOworICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbnN1cmUoY29ubmVjdGlvbiwgWyZd
IHsKKyAgICAgICAgcmV0dXJuIEhhc2hTZXQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyPiB7IH07CisgICAgfSkuaXRlcmF0b3ItPnZhbHVlLmFkZChuZXdIYW5kbGVJZGVudGlmaWVy
KTsKKyAgICBtX3JlZ2lzdHJ5LnJlZ2lzdGVySGFuZGxlKG5ld0hhbmRsZUlkZW50aWZpZXIsICpu
ZXdIYW5kbGUpOworICAgIG1faGFuZGxlcy5hZGQobmV3SGFuZGxlSWRlbnRpZmllciwgV1RGTW92
ZShuZXdIYW5kbGUpKTsKKyAgICByZXR1cm4gbmV3SGFuZGxlSWRlbnRpZmllcjsKK30KKworY29u
c3QgU3RyaW5nJiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6OmdldFBhdGgoRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgYXV0byBoYW5kbGUgPSBt
X2hhbmRsZXMuZmluZChpZGVudGlmaWVyKTsKKyAgICByZXR1cm4gaGFuZGxlID09IG1faGFuZGxl
cy5lbmQoKSA/IGVtcHR5U3RyaW5nKCkgOiBoYW5kbGUtPnZhbHVlLT5wYXRoKCk7Cit9CisKK3Zv
aWQgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVj
dGlvbjo6VW5pcXVlSUQgY29ubmVjdGlvbikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFp
bigpKTsKKworICAgIGF1dG8gaGFuZGxlcyA9IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5maW5kKGNv
bm5lY3Rpb24pOworICAgIGlmIChoYW5kbGVzID09IG1faGFuZGxlc0J5Q29ubmVjdGlvbi5lbmQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChhdXRvIGhhbmRsZUlkZW50aWZpZXIgOiBo
YW5kbGVzLT52YWx1ZSkgeworICAgICAgICBhdXRvIGhhbmRsZSA9IG1faGFuZGxlcy50YWtlKGhh
bmRsZUlkZW50aWZpZXIpOworICAgICAgICBtX3JlZ2lzdHJ5LnVucmVnaXN0ZXJIYW5kbGUoaGFu
ZGxlSWRlbnRpZmllcik7CisgICAgfQorICAgIG1faGFuZGxlc0J5Q29ubmVjdGlvbi5yZW1vdmUo
aGFuZGxlcyk7Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRE
aXJlY3RvcnkoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25uZWN0aW9uKQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgcmV0dXJuIGNyZWF0ZUhhbmRsZShjb25u
ZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5LCBTdHJpbmcg
eyBtX3BhdGggfSwgeyB9LCB0cnVlKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmls
ZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzdlM2U4OTE0ZTVjMDRhM2UxMzBj
MmNiYTk1Yzk3NDBkNDZjZTI0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaApAQCAtMCwwICsx
LDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
Zmllci5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGU7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworCitjbGFzcyBG
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8RmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyPiB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6
CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkmKTsKKyAgICB+RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKCk7
CisKKyAgICBFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I+IGNyZWF0ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlE
LCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSwgU3RyaW5nJiYgcGF0aCwgU3RyaW5nJiYg
bmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSk7CisgICAgY29uc3QgU3RyaW5nJiBnZXRQYXRo
KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcik7CisgICAgdm9pZCBjb25uZWN0aW9u
Q2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworICAgIEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gZ2V0RGly
ZWN0b3J5KElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQpOworCitwcml2YXRlOgorICAgIFN0cmlu
ZyBtX3BhdGg7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgbV9yZWdpc3Ry
eTsKKyAgICBIYXNoTWFwPElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQsIEhhc2hTZXQ8RmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyPj4gbV9oYW5kbGVzQnlDb25uZWN0aW9uOworICAg
IEhhc2hNYXA8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+PiBtX2hhbmRsZXM7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggMzYyYWZiODg1MmFm
ZjQ4MDk5ZTA5Y2Y1NWU3ZWM2NzM1ZTUzMzNjNy4uNDBkZThiZmNiYjkzNDdkYzc3NzY5NWI3N2I1
MjM3YWZlNGE4MjAyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAKQEAgLTI2LDYgKzI2
LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlICJOZXR3b3JrU3Rv
cmFnZU1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgIk9yaWdpblN0b3JhZ2VNYW5hZ2VyLmgi
CiAjaW5jbHVkZSA8cGFsL2NyeXB0by9DcnlwdG9EaWdlc3QuaD4KQEAgLTQ1LDYgKzQ3LDcgQEAg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBTdHIKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwog
CiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0
aGlzKSwgcGF0aCA9IHBhdGguaXNvbGF0ZWRDb3B5KCldKCkgbXV0YWJsZSB7CisgICAgICAgIG1f
ZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSA9IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKTsKICAgICAgICAgbV9wYXRoID0gcGF0aDsKICAgICAgICAg
aWYgKCFtX3BhdGguaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBhdXRvIHNhbHRQYXRoID0gRmls
ZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgInNhbHQiKTsKQEAgLTUz
LDE4ICs1Niw1NCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdvcmtTdG9yYWdlTWFuYWdl
cihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAgIH0pOwogfQogCitOZXR3
b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIoKQoreworICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKG1fY2xvc2VkKTsKK30KKwordm9pZCBO
ZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsb3NlKCkKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNN
YWluKCkpOworCisgICAgaWYgKG1fY2xvc2VkKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3Ig
KGF1dG8mIGNvbm5lY3Rpb24gOiBtX2Nvbm5lY3Rpb25zKQorICAgICAgICBjb25uZWN0aW9uLnJl
bW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworCisgICAgbV9jbG9zZWQgPSB0cnVlOworICAg
IG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfV0o
KSBtdXRhYmxlIHsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5ID0g
bnVsbHB0cjsKKyAgICAgICAgbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOwor
ICAgICAgICBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsKKworICAgICAg
ICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3Rl
Y3RlZFRoaXMpXSB7IH0pOworICAgIH0pOworfQorCiB2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdl
cjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJiBj
b25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBjb25u
ZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUuZ2V0KCksIHRoaXMpOwor
ICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2b2lkIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVjdGlvbihJUEM6OkNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pKQorICAgICAgICBy
ZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihN
ZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOwor
ICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMg
fSwgY29ubmVjdGlvbiA9IGNvbm5lY3Rpb24udW5pcXVlSUQoKV0oKSBtdXRhYmxlIHsKKyAgICAg
ICAgZm9yIChhdXRvJiBvcmlnaW5TdG9yYWdlTWFuYWdlciA6IG1fbG9jYWxPcmlnaW5TdG9yYWdl
TWFuYWdlcnMudmFsdWVzKCkpCisgICAgICAgICAgICBvcmlnaW5TdG9yYWdlTWFuYWdlci0+Y29u
bmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKKworICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlz
cGF0Y2goW3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpXSB7IH0pOworICAg
IH0pOwogfQogCiBzdGF0aWMgU3RyaW5nIGVuY29kZShjb25zdCBTdHJpbmcmIHN0cmluZywgRmls
ZVN5c3RlbTo6U2FsdCBzYWx0KQpAQCAtMTExLDkgKzE1MCw3MiBAQCB2b2lkIE5ldHdvcmtTdG9y
YWdlTWFuYWdlcjo6cGVyc2lzdChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwg
Q29tcGxldAogICAgIGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOwogfQogCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbUdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24sIGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIobG9jYWxP
cmlnaW5TdG9yYWdlTWFuYWdlcihvcmlnaW4pLmZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcigqbV9m
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5KS5nZXREaXJlY3RvcnkoY29ubmVjdGlvbi51
bmlxdWVJRCgpKSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjppc1NhbWVFbnRy
eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFSdW5M
b29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxlKQor
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisgICAgY29tcGxldGlv
bkhhbmRsZXIoaGFuZGxlLT5pc1NhbWVFbnRyeSh0YXJnZXRJZGVudGlmaWVyKSk7Cit9CisKK3Zv
aWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFuZGxlKElQQzo6Q29ubmVjdGlvbiYg
Y29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAgIGlmICghaGFuZGxl
KQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIobWFrZVVuZXhwZWN0ZWQoRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bikpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIoaGFu
ZGxlLT5nZXRGaWxlSGFuZGxlKGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgV1RGTW92ZShuYW1lKSwg
Y3JlYXRlSWZOZWNlc3NhcnkpKTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Omdl
dERpcmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNy
ZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisg
ICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhh
bmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25v
d24pKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKGhhbmRsZS0+Z2V0RGlyZWN0b3J5SGFuZGxl
KGNvbm5lY3Rpb24udW5pcXVlSUQoKSwgV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3Nhcnkp
KTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92ZUVudHJ5KEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG5hbWUs
IGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRp
b25hbDxGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZSA9IG1fZmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS0+Z2V0SGFuZGxlKGlkZW50aWZpZXIpOworICAg
IGlmICghaGFuZGxlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGUt
PnJlbW92ZUVudHJ5KG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5KSk7Cit9CisKK3ZvaWQgTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBpZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgdGFyZ2V0SWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxWZWN0b3I8U3RyaW5nPiwg
RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAo
IWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKG1ha2VVbmV4cGVjdGVk
KEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pKTsKKworICAgIGNvbXBsZXRpb25IYW5k
bGVyKGhhbmRsZS0+cmVzb2x2ZSh0YXJnZXRJZGVudGlmaWVyKSk7Cit9CisKIHZvaWQgTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyOjpjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNN
YWluKCkpOworCiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBt
YWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKV0oKSBtdXRhYmxlIHsKICAgICAgICAgbV9sb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2Vycy5j
bGVhcigpOwogICAgICAgICBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnMuY2xlYXIoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9O
ZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAppbmRleCBmNmRhZWQxM2YyNjc1Mzc3YzIyOGUxN2I2MmVk
ZmMwYmJjYWUwODkwLi5mYTBhMGVhZTc3MjUyMDU0YjY3NTdmNTg5ODQ1YzhiZTBmYzQ0NjRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L05ldHdvcmtTdG9yYWdlTWFuYWdlci5oCkBAIC0yNiw2ICsyNiw4IEBACiAjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCiAj
aW5jbHVkZSAiT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0NsaWVu
dE9yaWdpbi5oPgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KQEAgLTM2LDcgKzM4LDkgQEAg
c3RydWN0IENsaWVudE9yaWdpbjsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLWNsYXNzIE5ldHdv
cmtTdG9yYWdlTWFuYWdlciA6IHB1YmxpYyBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3Nh
Z2VSZWNlaXZlciB7CitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OworCitj
bGFzcyBOZXR3b3JrU3RvcmFnZU1hbmFnZXIgZmluYWwgOiBwdWJsaWMgSVBDOjpDb25uZWN0aW9u
OjpXb3JrUXVldWVNZXNzYWdlUmVjZWl2ZXIgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8TmV0
d29ya1N0b3JhZ2VNYW5hZ2VyPiBjcmVhdGUoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYg
cGF0aCk7CiAKQEAgLTQ0LDI1ICs0OCwzNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdG9wUmVjZWl2
aW5nTWVzc2FnZUZyb21Db25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYpOwogCiAgICAgUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uSUQ7IH0KKyAgICB2
b2lkIGNsb3NlKCk7CiAgICAgdm9pZCBjbGVhclN0b3JhZ2VGb3JUZXN0aW5nKENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJik7CiAKIHByaXZhdGU6CiAgICAgTmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
KFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIHBhdGgpOworICAgIH5OZXR3b3JrU3RvcmFn
ZU1hbmFnZXIoKTsKICAgICBPcmlnaW5TdG9yYWdlTWFuYWdlciYgbG9jYWxPcmlnaW5TdG9yYWdl
TWFuYWdlcihjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mKTsKIAogICAgIC8vIElQQzo6TWVz
c2FnZVJlY2VpdmVyIChpbXBsZW1lbnRlZCBieSBnZW5lcmF0ZWQgY29kZSkKICAgICB2b2lkIGRp
ZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpOwogCi0gICAg
Ly8gTWVzc2FnZSBIYW5kbGVycworICAgIC8vIE1lc3NhZ2UgaGFuZGxlcnMKICAgICB2b2lkIHBl
cnNpc3RlZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmKTsKICAgICB2b2lkIHBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3Jp
Z2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBmaWxlU3lz
dGVtR2V0RGlyZWN0b3J5KElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OkNsaWVudE9y
aWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQg
aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nh
cnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgZ2V0
RGlyZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CisgICAgdm9pZCByZW1vdmVFbnRyeShG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFs
PEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxl
U3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOwogCiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9u
SUQ7CiAgICAgUmVmPFdvcmtRdWV1ZT4gbV9xdWV1ZTsKICAgICBTdHJpbmcgbV9wYXRoOwogICAg
IEZpbGVTeXN0ZW06OlNhbHQgbV9zYWx0OworICAgIGJvb2wgbV9jbG9zZWQgeyBmYWxzZSB9Owog
ICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2lu
U3RvcmFnZU1hbmFnZXI+PiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzOwogICAgIEhhc2hN
YXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2luU3RvcmFnZU1h
bmFnZXI+PiBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnM7CisgICAgV2Vha0hhc2hTZXQ8
SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb25zOyAvLyBNYWluIHRocmVhZCBvbmx5LgorICAg
IHN0ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUw
ZThkZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3OTk1NTAuLmM2YjY5Nzk1ODk3M2Y2YTBjOGVhZDZl
ZjNmOTk0YTE0MWUzYmZiYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNz
YWdlcy5pbgpAQCAtMjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXIgewogICAgIFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdp
bikgLT4gKGJvb2wgcGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6
OkNsaWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxl
U3lzdGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAt
PiAoRXhwZWN0ZWQ8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdl
YktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rp
b24KKyAgICBJc1NhbWVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRp
ZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciB0YXJnZXRJZGVudGlmaWVyKSAtPiAoYm9vbCByZXN1bHQpIEFzeW5jCisgICAgR2V0RmlsZUhh
bmRsZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVy
LCBTdHJpbmcgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSkgLT4gKEV4cGVjdGVkPFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlRXJyb3I+IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgR2V0RGlyZWN0
b3J5SGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50
aWZpZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAoRXhwZWN0ZWQ8
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5
c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1v
dmVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlm
aWVyLCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkgLT4gKHN0ZDo6b3B0aW9u
YWw8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jCisgICAgUmVz
b2x2ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVy
LCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlm
aWVyKSAtPiAoRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIFdlYktpdDo6RmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcj4gcmVzdWx0KSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXgg
NzVhMWFlZDI0OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uNGYwNmY0NTI0NjU2NDZk
MjAxMWJjN2Y1M2JiZGIyODExNTkzYWE0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBA
IC0yNiw2ICsyNiw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3Rv
cmFnZU1hbmFnZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNl
IFdlYktpdCB7CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNr
ZXRNb2RlIDogYm9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwz
NCBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewog
ICAgIH0KKwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21v
ZGU7IH0KICAgICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUg
PSBtb2RlOyB9CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uOjpV
bmlxdWVJRCBjb25uZWN0aW9uKQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3Jh
Z2VNYW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5l
Y3Rpb25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdl
UGF0aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0
ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmll
cik7CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisg
ICAgeworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAg
ICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKwor
ICAgICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJp
dmF0ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwog
ICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZm
b3J0IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9m
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3Jp
Z2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAog
T3JpZ2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsK
IAotdm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3Jh
Z2VNYW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQgY29u
bmVjdGlvbikKK3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRC
dWNrZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VN
YW5hZ2VyOjpTdG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tl
dCgpCiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0
QnVja2V0KQogICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNr
ZXQ+KG1fcGF0aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2Rl
KFN0b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1
Y2tldDsKK30KKwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAg
bV9wZXJzaXN0ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VC
dWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVj
a2V0KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5
ZDA2ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLjdkMTE2NTVhN2Q0ZDkyMGVkZDBhOWYzZmZhZjMyZjky
MGQxMzZiODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFn
ZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZp
ZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktp
dCB7CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAg
ICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5T
dG9yYWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIo
KTsKIAorICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlE
KTsKICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9CiAg
ICAgdm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOwogCiBw
cml2YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwogICAgIGNs
YXNzIFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tldCgpOwog
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tldDsKICAg
ICBTdHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkK
aW5kZXggZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWViZjcyYjE1Yi4uM2Y5MzZkMjUy
OTAyZTUyNDc4ZWI4MTEwOWJlMjY4ZGEwOTVlNWI4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMv
d2Via2l0L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fu
bm90X2JlX2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVudFdvcmxk
SWRlbnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJRCcsCiAg
ICAgICAgICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmll
cicsCiAgICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAgICAgICdX
ZWJLaXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRleCA5M2Ri
YTZjZDk2MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZjOGI5NWNm
ZDEzOWEwZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUsOSBAQCBO
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBuby11bmlm
eQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3Bw
IEBuby11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29u
dGV4dENvbm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtT
dG9yYWdlTWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1h
bmFnZXIuY3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250ZW50L1dl
YlVzZXJDb250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24v
V2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNh
dGlvbi9XZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQv
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTkxZjc2YjM4OTRlOTE3YzUy
N2M0ZjkzOGZlZWQ4NjNjNzcwMWM2OS4uNDJiZWNhOWQ4ZjRmMDc2NmZlZGJiMjkxMzI3MTE0ZjZi
ZTZhNDBhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC0xNDY5LDYgKzE0NjksOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1
REUwMjZFNUJDRkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBF
QzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQx
MzAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2
QTcgLyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUy
NkYzM0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3
NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMz
QzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4
MUE3RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3IuaCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8q
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRp
YXRlQWN0aW9uQ29udHJvbGxlci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUg
LyogV0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk5MzIzNjExRTFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0
eWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIz
NjExRDFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODUsNiArMTQ4
OCw3IEBACiAJCTkzNTZGMkRGMjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERG
MjE1MUFERjQwMDdGNDU1RiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYy
RTAyMTUyQjc1MjAwRTZENURGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIx
NTFBREYzMDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsg
fTsKIAkJOTM1NkYyRTEyMTUyQjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRF
MTIxNTFBREY0MDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJ
OTM1QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1
Nzk4MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Lmgg
Ki87IH07CiAJCTkzNUVFQjlCMTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJk
TGlzdEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzNUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVF
RUI5RjEyNzc2MUFDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQw
MDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAv
KiBTdG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyog
U3RvcmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkwNCw2ICs0
OTA4LDE0IEBACiAJCTkzMDg1RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1h
bmFnZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtT
dG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJN
ZXNzYWdlc1JlcGxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29y
a1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFn
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAw
MDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJy
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1
MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlw
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25U
eXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDkxOCw2ICs0OTMwLDggQEAK
IAkJOTM0MjU4OEYyNTU1RENBNTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1l
ZGlhUGVybWlzc2lvblV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTM0QjcyNDMxOUY1QjlCRTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8q
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFj
a0ZvcndhcmRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdL
QnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM1RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAv
KiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2OTEsNiArOTcwNSwxNCBAQAogCQk5MzA4NURDMjI2RTFC
QjY1MDAwRUM2QTcgLyogc3RvcmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hp
bGRyZW4gPSAoCisJCQkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaCAqLywKKwkJCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5
OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAg
Ki8sCisJCQkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlUmVnaXN0cnkuaCAqLywKKwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0Qg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUx
QkJCRDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3
MjZFMUM2RUUwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8s
CkBAIC0xMDAwNiw2ICsxMDAyOCw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8q
IGNvY29hICovLAogCQkJCTJEMjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJ
QkMxMTFBREUxMTJGNUI5QTAwMzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3
MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMx
QTA3NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAq
LywKIAkJCQkxQTcyODQ0NDE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lv
bi5jcHAgKi8sCiAJCQkJMUE3Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNv
bnZlcnNpb24uaCAqLywKIAkJCQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxl
Qml0bWFwVXRpbGl0aWVzLmNwcCAqLywKQEAgLTEyMTc4LDYgKzEyMjAyLDEwIEBACiAJCQkJMUFB
NTc1RkIxNDk2QjUyNjAwQTRFRTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTcyRUJCRDcyNTM3RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JU
QVBJLmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlk
b1NlcnZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAv
KiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2
RjMzQzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYg
LyogRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYx
QTE4RTI1QUUxMDBDRTFGODggLyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5
MEMxRjQxMjY0RkQ3MTAwM0U0NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlDNTlDNEE1OTE4QjgxMTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlv
bi5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMWFjMGNhYzdkNGNjZDRmYWQ5ZjMyYzAwZmRmOWQwZjU5OTQ3
NzMwYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9y
LmgiCisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRl
IDxXZWJDb3JlL0V4Y2VwdGlvbk9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRmlsZUhhbmRsZS5o
PgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHk+IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
KQoreworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkoaWRlbnRpZmllciwgY29ubmVjdGlvbikpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisg
ICAgOiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKKyAgICAsIG1fY29ubmVjdGlvbigmY29ubmVj
dGlvbikKK3sKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0
aW9uQ2xvc2VkKCkKK3sKKyAgICBtX2Nvbm5lY3Rpb24gPSBudWxscHRyOworfQorCit2b2lkIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJ
bXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8
Ym9vbD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24p
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBX
ZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0
byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYg
KCFpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOwor
CisgICAgaWYgKG1faWRlbnRpZmllci50b1VJbnQ2NCgpID09ICppZGVudGlmaWVyKQorICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNl
bmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpJc1NhbWVF
bnRyeShtX2lkZW50aWZpZXIsIG1ha2VPYmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllclR5cGU+KCppZGVudGlmaWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlc3VsdCkgbXV0YWJsZSB7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3VsdCk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RmlsZUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUs
IGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3du
RXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RmlsZUhh
bmRsZShtX2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW3RoaXMsIHByb3Rl
Y3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9LCBuYW1lLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlm
ICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6
OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUocmVzdWx0LmVycm9yKCkpIH0pOwor
ICAgIAorICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3Is
ICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAgICAgUmVmPFdlYkNvcmU6OkZpbGVT
eXN0ZW1IYW5kbGVJbXBsPiBpbXBsID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3Jl
YXRlKHJlc3VsdC52YWx1ZSgpLCAqbV9jb25uZWN0aW9uKTsKKyAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoV1RGTW92ZShpbXBsKSk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eTo6Z2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9v
bCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNl
cHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw+PiYmKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJv
ciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpHZXREaXJlY3RvcnlI
YW5kbGUobV9pZGVudGlmaWVyLCBuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSksIFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfSwgbmFtZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAgICAgICBp
ZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3Jl
OjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJvcigpKSB9KTsK
KyAgICAKKyAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9y
LCAiQ29ubmVjdGlvbiBpcyBsb3N0Il9zIH0pOworCisgICAgICAgIFJlZjxXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlSW1wbD4gaW1wbCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNy
ZWF0ZShyZXN1bHQudmFsdWUoKSwgKm1fY29ubmVjdGlvbik7CisgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKFdURk1vdmUoaW1wbCkpOworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUHJveHk6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxl
dGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25P
cjx2b2lkPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fY29ubmVjdGlv
bikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7
IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCIgfSk7CisKKyAgICBt
X2Nvbm5lY3Rpb24tPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpSZW1vdmVFbnRyeShtX2lkZW50aWZpZXIsIG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5
KSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8g
ZXJyb3IpIG11dGFibGUgeworICAgICAgICBpZiAoZXJyb3IpCisgICAgICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9u
Q29kZShlcnJvci52YWx1ZSgpKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0p
OworICAgIH0pOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29s
dmUoRmlsZVN5c3RlbUhhbmRsZUltcGwmIGhhbmRsZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25u
ZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0byBpZGVudGlmaWVyID0gaGFuZGxlLnN0b3Jh
Z2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYgKCFpZGVudGlmaWVyKQorICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoVmVjdG9yPFN0cmluZz4geyB9KTsKKworICAgIG1fY29ubmVj
dGlvbi0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6
OlJlc29sdmUobV9pZGVudGlmaWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXJUeXBlPigqaWRlbnRpZmllcikpLCBbY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgewor
ICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJv
cigpKSB9KTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHJlc3VsdC52YWx1
ZSgpKSk7CisgICAgfSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYWNjMGZiZTVjZjZl
YWY3ZTVhM2U1MjRjYjk0MTg4YmEyMjg1ODFmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNs
dWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKyNpbmNsdWRlIDxXZWJD
b3JlL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmg+CisKK25hbWVzcGFjZSBJUEMgeworY2xhc3MgQ29u
bmVjdGlvbjsKK30KKworbmFtZXNwYWNlIFdlYkNvcmUgewordGVtcGxhdGU8dHlwZW5hbWU+IGNs
YXNzIEV4Y2VwdGlvbk9yOworY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKK2NsYXNz
IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3Mg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eSBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpGaWxl
U3lzdGVtSGFuZGxlSW1wbCB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5PiBjcmVhdGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
LCBJUEM6OkNvbm5lY3Rpb24mKTsKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoKTsKKworcHJp
dmF0ZToKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJik7CisKKyAgICAvLyBGaWxlU3lzdGVt
SGFuZGxlSW1wbAorICAgIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyKCkgeyByZXR1cm4gbV9pZGVudGlmaWVyLnRvVUludDY0KCk7IH0KKyAgICB2b2lkIGlz
U2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25Pcjxib29sPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXRGaWxl
SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5
c3RlbUhhbmRsZUltcGw+PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5k
bGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVt
SGFuZGxlSW1wbD4+JiYpPiYmKSBmaW5hbDsKKyAgICB2b2lkIHJlbW92ZUVudHJ5KGNvbnN0IFN0
cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJDb3JlOjpFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZXNv
bHZlKEZpbGVTeXN0ZW1IYW5kbGVJbXBsJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3Jl
OjpFeGNlcHRpb25PcjxWZWN0b3I8U3RyaW5nPj4mJik+JiYpIGZpbmFsOworCisgICAgRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBSZWZQdHI8SVBD
OjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJT
dG9yYWdlQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uY3BwCmluZGV4IDg4OTUwOGFhNmM3MzMyMWM0MzNk
YjU3ZDkxMTczZTcwNDY4N2U0MWEuLjkxYWJhZWM4OTI2ZDczODVmYzYxNTkxYzk1MjlmMGFhYzc1
MjU4MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmNwcApAQCAtMjYsNiArMjYsNyBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlN0b3JhZ2VDb25uZWN0aW9uLmgi
CiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgiCiAjaW5jbHVkZSAi
TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzLmgiCkBAIC0zOCwxNiArMzksMzEg
QEAgUmVmPFdlYlN0b3JhZ2VDb25uZWN0aW9uPiBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6Y3JlYXRl
KCkKICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJTdG9yYWdlQ29ubmVjdGlvbik7CiB9CiAK
LXZvaWQgV2ViU3RvcmFnZUNvbm5lY3Rpb246OnBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRPcmln
aW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpnZXRQZXJzaXN0ZWQoY29uc3QgV2Vi
Q29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNS
ZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpQZXJzaXN0ZWQob3JpZ2luKSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlN0b3JhZ2VDb25uZWN0
aW9uOjpwZXJzaXN0KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmIG9yaWdpbiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViU3RvcmFnZUNv
bm5lY3Rpb246OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAg
Y29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpQZXJzaXN0KG9yaWdpbiksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0K
IAordm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6ZmlsZVN5c3RlbUdldERpcmVjdG9yeShjb25z
dCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZT4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIGNvbm5lY3Rpb24gPSBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5j
b25uZWN0aW9uKCk7CisgICAgY29ubmVjdGlvbi5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6RmlsZVN5c3RlbUdldERpcmVjdG9yeShvcmlnaW4pLCBb
d2Vha0Nvbm5lY3Rpb24gPSBtYWtlV2Vha1B0cihjb25uZWN0aW9uKSwgY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byByZXN1bHQpIG11dGFibGUgewor
ICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihXZWJDb3JlOjpFeGNlcHRpb24geyBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKHJlc3VsdC5lcnJv
cigpKSB9KTsKKworICAgICAgICBpZiAoIXdlYWtDb25uZWN0aW9uKQorICAgICAgICAgICAgcmV0
dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25v
d25FcnJvciwgIkNvbm5lY3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBhdXRvIGltcGwg
PSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUocmVzdWx0LnZhbHVlKCksICp3
ZWFrQ29ubmVjdGlvbik7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3Jl
OjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpjcmVhdGUoeyB9LCBXVEZNb3ZlKGltcGwpKSk7
CisgICAgfSk7Cit9CisKIElQQzo6Q29ubmVjdGlvbiYgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNv
bm5lY3Rpb24oKQogewogICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24u
aCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29u
bmVjdGlvbi5oCmluZGV4IDFjMGU2NjM2OWI1NmVkYjcwZTkzYTg4OWUzMjUwMzU2NjY5MzM2ZTUu
LjBkNmMwMWJhODIxY2JjNDU0MjdlZjc2ZDZiNmFlYmVjZDE2N2FiODQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9y
YWdlQ29ubmVjdGlvbi5oCkBAIC0zMSw2ICszMSwxMSBAQCBuYW1lc3BhY2UgSVBDIHsKIGNsYXNz
IENvbm5lY3Rpb247CiB9CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1l
PiBjbGFzcyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit9
CisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJTdG9yYWdlQ29ubmVjdGlvbiBmaW5h
bCA6IHB1YmxpYyBXZWJDb3JlOjpTdG9yYWdlQ29ubmVjdGlvbiB7CkBAIC0zOCw4ICs0Myw5IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFdlYlN0b3JhZ2VDb25uZWN0aW9uPiBjcmVhdGUoKTsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIHBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7Ci0gICAgdm9pZCBwZXJzaXN0
KFdlYkNvcmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
KSBmaW5hbDsKKyAgICB2b2lkIGdldFBlcnNpc3RlZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmln
aW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIHBl
cnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0
IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKT4m
JikgZmluYWw7CiAKICAgICBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24oKTsKIH07CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggYzUxYTFmOGVkNzYzNGRkZTE5MWI0MGI5NmI1MWUzMjVkMDMxMDU4Mi4uOGNiYWRiZGJhNGJh
ZjJhNWYwNjJlYTU4ZDA5YzgzMjJjNWFlMTg2MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIx
LTA5LTIyICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBp
bml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAg
ICAgICAgKiBwbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBzdG9yYWdl
L2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBzdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRs
ZS1iYXNpY3MuaHRtbDogQWRkZWQuCisKIDIwMjEtMDktMjAgIEF5dW1pIEtvamltYSAgPGF5dW1p
X2tvamltYUBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI4MTEwMj8pOiBbIE1h
YyBdIG1lZGlhL3RyYWNrL3RyYWNrLWluLWJhbmQuaHRtbCBpcyBhIGZsYWt5IHRpbWVvdXQuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAzNDM3YTVlMTQ3ZDdkZGE0MGQxYmU5YmNj
NzEwOWEyNjgwNWFlMmFjLi4zZDgwN2JlNDkzZTNkNDExNDIxYjdiNjRhMjYyZmE0NTZjMjFmODI1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMyBAQAorMjAyMS0w
OS0yMiAgU2lodWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5p
dGlhbCBzdXBwb3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LUVycm9yLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29y
a2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJl
bW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUt
Z2V0RGlyZWN0b3J5SGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRs
ZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4
dDoKKwogMjAyMS0wOS0yMCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAK
ICAgICAgICAgSW1wbGVtZW50IGlucHV0LXNlY3VyaXR5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBm
NWRjYWNkMWUyYTE3M2VlZGZhYmMwMTY0YmRjZmYxYzdlYTllNDdjLi5lNGIzZGNhNDI1NWQzMGVj
OWJhZTgwYjIxMDhjNTdmYTcxMjc2YTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIwMCw2ICsy
MDAsNyBAQCBmYXN0L3NwZWVjaHJlY29nbml0aW9uL2lvcy8gWyBTa2lwIF0KIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBTa2lwIF0KK3N0b3JhZ2UvZmlsZXN5
c3RlbWFjY2Vzcy8gWyBTa2lwIF0KIAogIyBhcHAtcHJpdmFjeS1yZXBvcnQgdGVzdHMgcmVseSBv
biBXZWJLaXRBZGRpdGlvbnMKIGh0dHAvdGVzdHMvYXBwLXByaXZhY3ktcmVwb3J0LyBbIFNraXAg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4
IDY5MGQyNzkzNDJlNmE4ZDk0OTk2OTFiMTlmNWNkOTY2NGJiNDAwOTYuLjFiNGRjOGI2ZGE4MjZk
NWRmMjNlN2ZhODk3ZmQxZWE2NzNiNGVkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1ZS1vcmln
aW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3JpZ2luLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTIsNSArMiw1IEBACiBQQVNTIHNob3dEaXJlY3Rv
cnlQaWNrZXIoKSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkgaWZyYW1lcy4KIFBBU1Mg
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkg
aWZyYW1lcy4KIEZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5kIHNob3dE
aXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBpZnJhbWUuIGFzc2Vy
dF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1
cml0eUVycm9yIiBidXQgZ290ICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElPTjogVHlw
ZUVycm9yIgotRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQgc2hvd0Rp
cmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3aW5kb3cu
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVE
OiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3Rvcnko
KTogUkVKRUNURUQ6IE5vdFN1cHBvcnRlZEVycm9yIgorRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5n
ZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEg
c2FuZGJveGVkIG9wZW5lZCB3aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGly
ZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJzaG93RGly
ZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElPTjogVHlwZUVycm9yIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERC
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNDEyNGI3YmU0ZGNkYWFkNGFiOTMwNzlkYjJk
YzBkZTFjMzI3MmViNC4uMjE1YWI2NjBiZDA0YmViZWI2NTRmODJmMzZlYTEzMzdlMGIwMmE3NyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUluZGV4ZWRE
Qi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
QmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcg
QEAKIAotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGlu
ZyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3Rv
cmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlvbi4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlcyBhbmQgYmxv
YnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBT
dG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERC
IHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJ
TCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGluZyB0cmFuc2Fj
dGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4g
SW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4ZWREQi4g
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhl
ZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA4MTVlNzVmNjMyZDRlZmNjOGQ2YjIxOTM0MzJiYTBjY2ZkOTE0
NDM4Li44MzdlYWUxMDYyOGVkZjkzZjE3NTY4Y2I5MjMwYmEyY2I4ZDMzNWM2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwxMCBAQAog
Ci1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMgcmV0dXJu
cyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5
IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhhbmRsZXMg
Zm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5zIHRydWUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkgZm9yIGRp
ZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNhbWUg
ZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBj
b21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3RvcnkgcmV0dXJu
cyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRy
eSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50aWNhbCBk
aXJlY3RvcnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVzIHJldHVybnMgZmFs
c2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlm
ZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5kbGVzIHJl
dHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5
IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhlIHNh
bWUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGNv
bXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSByZXR1cm5z
IGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50cnkgY29t
cGFyaW5nIGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZTNjYTdj
NDY4ODI1MGY0NDcxNTg2NTIyYTg4OWNkZWFmZWZkMWY4NC4uMzk1ZWNhNTU0YmRkN2I4YWIwMjJl
ZDUyYzkyZDQ0MzFkYzEyYTNjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9z
dE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDMgKzEsMyBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBicm9h
ZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNlcnZpY2Ug
d29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZyYW1lLCBk
ZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CmluZGV4IDdhZjQxMTgzMWRjMGZiNmNiMjY1Yjg0M2IyYjBjZWY3MDNh
MDA0YzMuLjRiMWM1YmUzYjc3ZDhmN2I2MzA0NmY5YTBhMTJkZWE2YzQ4Mjg4MTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJv
ci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
Y3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBpZnJhbWUu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNz
YWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB0byBh
IGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
RmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0YSBVUkkg
aWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2luZG93LiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2Vp
dmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEgd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgbWVz
c2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRv
IGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZB
SUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2lu
IGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGlu
IGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRvIHNl
bmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRi
b3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBz
ZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBp
biBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBG
YWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2lu
ZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQgaW4gYSB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1l
c3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IHRvIGEg
c2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVz
c2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNTNlOTBlMjNjNDkxZjU4OGQxYjViNmViZWMy
MTIyZDdhY2NlODA2Yi4uODIxYzYxYzlmNGYxZWE0ZmIxNWNlMTExZDlmYzJmNzA2YTBiYmM0ZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9y
dC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2Ft
ZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBT
ZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgc2FuZGJv
eGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlmcmFtZSBz
cmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdpbiBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2IgaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNp
bmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VI
YW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdl
LU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBlNWRl
YzA4YTk1M2NhNDA2ZTFhNGY1OThkZDhlNDRmMGFhNzk3N2I1Li5hOTM4NDdkMDAzNWIzYmY3ZWFi
NTU5ZTA0ODA0NWQwNmNiMDZiNTgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRs
ZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1l
c3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRi
b3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNDUxMDY1ZTMyMmRhZmUwNGJl
YWUyMTQ5ZTUxNDBhYTY1YzM2ZjcwZC4uODFmNmY2MTA3ZjRhZmZhMTljMzg4ZWUxY2M4ZDA0YjFh
M2Q4NGVkZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Ut
TWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEs
NSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBv
cnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlM
IFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFy
ZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBh
bmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGljYXRlZCB3
b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2VyLiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMg
dXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggODY0NWQ5M2VlNTcyMTU3OWJiOWVmYzUyODI0
NjQ0NDk3MjVjMTNlNy4uM2NlOWU4MzIyMGVkZDJiYmZhNzQ2ZDRjZWIyOTRkNjcwYTdkNWM1ZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNz
YWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3Nh
Z2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVk
IHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2IgaWZyYW1lLiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2Vz
IHVzaW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
CitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdpbiBpZnJh
bWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBmMDk1OTk1ODk2M2YyZjRkNmE5N2U4YTdi
YTczNzRmYjUxZTgyZDRmLi42ZDk2MjY1ODQxOThiZTkwNzgxZWZjOTdiMWQwZmRjOGZiMWY4YTg2
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBt
ZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2Ig
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCBy
ZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiB3aW5kb3cu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNz
YWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1C
YXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNzJmZjNmNTc0MTJkZDA4ZWM2YTRiZjNj
MDVmYzM2OGI4OWFmYWE2Ni4uMjRiNDZkZDU5YWNhMDc5MDRmZDY3Yjk5MTFmNzA3MDZhZDlhMjRi
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRwcy53aW5k
b3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUg
bWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2Vydmlj
ZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
ZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92
ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDRjYTBmOTQ3MTBjOGUzZTA1Zjk1YTA3NDcw
OWNkODdhMDdiMjg1N2QuLjdlNjYxY2UwZjc5MzRmNjkzZDI2ZjM5MTdlMDc2ODQwZTcxY2RmOWMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1yZW1vdmUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5IEBACiAK
LUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBzaG91bGQg
ZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSB0byBy
ZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hvdWxkIGZh
aWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkgb24gYSBu
b24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBk
ZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCByZW1vdmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9wdGlvbiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUg
YSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4g
YWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSByZW1vdmVk
IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2
ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1cnNpdmUg
b3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFuZGxlLmh0
dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAx
ZmM0NzQ4MDYyM2VhYjkzYmM5NmE5MzEwYTdjNTY2M2Y4NTg4MjMwLi43ODE3MWZmMGU0ODc4ZWI0
ODk5MDE1MDljZWI0NTgzZDg1N2E2Njg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1n
ZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwxMiBA
QAogCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMgZm9yIG5v
bi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1wdHkgZGly
ZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9y
eUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0
ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2luZyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoKSB3
aGVuIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0
eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERpcmVjdG9y
eUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkg
d2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9yeSBleGlzdHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10
cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBmb3Igbm9u
LWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
Z2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRpcmVjdG9y
eSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZShj
cmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHJldHVy
bnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUgYWxyZWFk
eSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRsZSgpIHdp
dGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0
b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRp
cmVjdG9yeSBleGlzdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJl
Y3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUu
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAzMzZlNGRjNzM5MWIwODNmZDA0YWJiODE2NGJm
MjYwYjBjZWQxNWQ4Li5hZTU1ZDEzNGQyNzQyNWUwN2NhMWM4NmZhNjdhNmZkNGNlODdmNTRlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXRG
aWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CkBAIC0xLDEzICsxLDEzIEBACiAKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5
IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlzdGluZyBm
aWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxl
KGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2luZyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVh
dGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5h
bWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZSgp
IHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBn
ZXRGaWxlSGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2UpIHdpdGgg
YSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBh
dGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZp
bGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmlsZXMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVl
KSBjcmVhdGVzIGFuIGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZXR1
cm5zIGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRob3V0IGVy
YXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1l
IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhlIHNhbWUg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoKSB3
aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxl
SGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBzZXBhcmF0
b3Igd2hlbiB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA5MmJhMDA2MWMxMTJkYjk5YTY5NmMwM2ZiNGFiMGE4
NzEwYWIzYmUxLi5mZTFmZmE5YzQ1YmY3ODkxOGM2OGJkODEyMjlkNzJlZTAzMDZhNGM1IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRp
b24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw4
ICsxLDggQEAKIAotRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24gZG9lc24n
dCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBAQGFzeW5jSXRl
cmF0b3I6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29y
a3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXRlcmF0aW9uIHdoaWxl
IGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRvZXNuJ3Qg
Y3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBAQGFzeW5jSXRlcmF0b3I6
IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
ZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgorRkFJTCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBnYXJiYWdl
IGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBz
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGFjNmZjMTk0ODQ3
OWMxN2Q5OGIwMzhiNzQ3ZDZiOTMwNmRiYzA5MmMuLjI4MTQ3MjI1YmRhODQ5MjhkYzMyNjc2NDEw
MGE0OWZmZGEyYmMwMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSwxMSBAQAogCi1GQUlMIHJlbW92ZUVudHJ5KCkg
dG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBy
ZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWlsIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3Zl
IGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCByZW1vdmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgZGly
ZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1wdHkgbmFt
ZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1v
dmVFbnRyeSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91bGQgZmFp
bCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdp
dGggYSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5IHJlbW92
ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJl
bW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGlyZWN0b3J5
IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50
cnkoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBzdWItaXRl
bXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGgg
ZW1wdHkgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hvdWxkIGZh
aWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgpIHdpdGgg
YSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQp
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXgg
NTU3MWYxMWQxY2YwMGQxMzllZmE5ZjhkYzZlOGM0MmMwYjFiMzM0MC4uZjVlNjUxYjFlZjFjN2Yx
MTk1YzZhNTdhMDcyNzM2NDIyNzEzYzI2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBSZXNvbHZlIHJldHVy
bnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3QgcGF0aCB3
aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hpbGQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5zIGVtcHR5
IGFycmF5IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFzY2lpIGNo
YXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVy
bnMgbnVsbCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRp
dmUud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhh
bmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0cHMudGVu
dGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMzMwMTBkNzE4NDUyMmJiMzcwNWViMzhi
NzM0YTNmYTBkMjY4NjZmYy4uM2I4YzBkOGRhYjAxODBlOTIzYzQ0Mzk3ZjY0MWM2NWRjYWU3ZmQ5
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWNyZWF0
ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRpdmUud2lu
ZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5k
bGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBzLnRlbnRh
dGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEF0dGVtcHQg
dG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgorRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRsZS4gcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAppbmRleCA5Y2YwMTlkMjU2OWNmZjQ5OGMxMDRmMTVjN2FmYWRhMWMxOTdhNmM3Li5m
N2MxNzA3M2FlZWZmOWFhZjBiNzI4Y2NiZTJhYjhlMWRkNjFhNTc4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1nZXRGaWxl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgZ2V0RmlsZSgp
IHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGUoKSBwcm92aWRlcyBh
IGZpbGUgdGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0
YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRi
b3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQKaW5kZXggYTA2OTI2NjFkZDIzZDEwYzA5ZmZkNTllNmRiZTBiMGM4ZTJjNjBiYS4uZDE1
MjZjNTk5NTg2NjI1ZjMxNmE3Njc5OGY3MDE3NDhiODQ2ZmVlMCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mv
c2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0
cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBACiAKLUZB
SUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBC
bG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBwaXBlZCB0
byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFtIG9iamVj
dCB3aXRoIG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJp
bmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0
aCBhbiBBcnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBi
ZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEg
cGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CmluZGV4IGY5N2U4MTJkNzcyYTY1NTE1N2E1ZGFjZWZjMTM1ZmMwNjZiMGEy
MmMuLjM3ZjdhNjRhZTlhNWYwMWRkZDg3ZjRhY2RhODc5YTU0YjY2NjQ4ZTggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJs
ZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzMSArMSwzMSBA
QAogCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2IgdG8gYW4g
ZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgp
IHdpdGggV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBv
cnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBzdHJpbmcgdG8gYW4g
ZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJvIG9mZnNl
dCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCBj
b25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcgYXBwZW5k
cyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdyaXRlUGFy
YW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFuZCBhIHZh
bGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgp
IGNhbGxlZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQgYmV5b25k
IHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHV0Zi04
IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdp
dGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5k
b3dzIGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVtcHR5IGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGEg
dmFsaWQgdHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5
IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWlj
IHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMgb24gY2xv
c2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczog
d3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVzOiBjbG9z
ZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5IHN1Y2Nl
ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczog
d3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBpZiBmaWxl
IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0V3Jp
dGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
V3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBh
cmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFyYW1zOiBz
ZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBmaWxlIHNo
b3VsZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgd3JpdGUo
KSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMgd2l0aG91
dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgd3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0byBhbiBl
bXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCB3cml0ZSgpIGNhbGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24g
YW5kIHN0cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3Jp
dGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5n
IGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdy
aXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0IGJleW9u
ZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdXRmLTggc3RyaW5n
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgc3RyaW5n
IHdpdGggdW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxpbmUgZW5kaW5n
IHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0
aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5IGJ1ZmZl
ciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IGNsb3Nl
KCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0cmVhbXMg
bWFrZSBhdG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0
ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21p
YyB3cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3BlcmF0aW9u
IG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRvbWljIHdy
aXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBp
ZiBmaWxlIGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRX
cml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFdy
aXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBhcmFtIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHNlZWsgbWlzc2lu
ZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRl
KCkgd2l0aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVqZWN0IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVk
X0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFueS1leHBl
Y3RlZC50eHQKaW5kZXggNTAwOTI1NGE0ZjEwZTI3OTNiZDY0Yzg0MTk1NTkyNDUyMTJmMmQxMS4u
ZTM4NTFmY2EzM2U0YzlkODM5NjE5MWI2ZDFkYmFlYWNmMGRhMzg5NCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nl
c3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVh
bS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgdHJ1bmNh
dGUoKSB0byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1G
QUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3Rvcnkg
aXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgp
IGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0
b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY3Jl
YXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRhYmxlIGZp
bGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9y
OiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3RpbmdEYXRh
OiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBl
bXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1cnNvciBw
b3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZzZXQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY29tbWFuZHMgYXJlIHF1ZXVlZCwg
c3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCitGQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZhaWxzIHdo
ZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVtb3ZlZCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBw
YXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9taWMgd3Jp
dGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIu
dmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5n
RGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdp
dGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGN1cnNvciBw
b3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNldCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0cmVhbSBp
cyB1bmxvY2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRp
b25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggZDIx
ZGVkNTQ5OTZlN2YwYWNjODgwNmZhN2U3ZTlhMjdlN2NmY2U0Ni4uZDhkY2ViZTQ4NzEwMjMwOTM0
NTNhZmFmYjhmM2QyNzJiZGY5M2Y2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTg2NCwzICs4NjQsNSBAQCBmdWxsc2NyZWVuL2Z1bGwtc2NyZWVuLWVu
dGVyLXdoaWxlLWV4aXRpbmcuaHRtbCBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc3RvcmFnZS8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFBhc3MgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzLyBb
IFBhc3MgXQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nl
c3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iZWVmN2I2ZWM3Y2RiMGE2ZTEzMjEzMDliYWZmMDVlOTQ5NDExYmZkCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2Rp
cmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBACitUaGlz
IHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJvb3RIYW5kbGUu
bmFtZSBpcyAiIgorUEFTUyByb290SGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BBU1MgZGly
SGFuZGxlLm5hbWUgaXMgImRpciIKK1BBU1MgZGlySGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIK
K1BBU1MgaXNTYW1lRW50cnkgaXMgZmFsc2UKK1BBU1MgZmlsZUhhbmRsZS5uYW1lIGlzICJmaWxl
IgorUEFTUyBmaWxlSGFuZGxlLmtpbmQgaXMgImZpbGUiCitQQVNTIGhhbmRsZU5hbWVzLmxlbmd0
aCBpcyAyCitQQVNTIGhhbmRsZU5hbWVzWzBdIGlzICJkaXIiCitQQVNTIGhhbmRsZU5hbWVzWzFd
IGlzICJmaWxlIgorUEFTUyBjcmVhdGVFcnJvci50b1N0cmluZygpIGlzICJOb3RGb3VuZEVycm9y
OiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4iCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNp
Y3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44MzczZDg2ZTM3ZWVkODUxNGY0Mzc2MzRlZmQ0ZTMwYThmODBm
ZGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNj
ZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKQEAgLTAsMCArMSwxMDAgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+CitkZXNjcmlw
dGlvbigiVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLiIpOworCit2YXIgcm9vdEhhbmRsZSwgZGlySGFuZGxlLCBmaWxlSGFu
ZGxlLCBpc1NhbWVFbnRyeSwgaGFuZGxlTmFtZXMsIGNyZWF0ZUVycm9yOworCitmdW5jdGlvbiBm
aW5pc2hUZXN0KGVycm9yKQoreworICAgIGlmIChlcnJvcikgeworICAgICAgICB0ZXN0RmFpbGVk
KGVycm9yKTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGdldERp
cmVjdG9yeSgpIHsKKyAgICBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKS50aGVuKCho
YW5kbGUpID0+IHsKKyAgICAgICAgcm9vdEhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLm5hbWUiLCAiIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicm9vdEhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBj
cmVhdGVEaXJlY3RvcnlIYW5kbGUocm9vdEhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9
PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBj
cmVhdGVEaXJlY3RvcnlIYW5kbGUoZnJvbUhhbmRsZSkgeworICAgIGZyb21IYW5kbGUuZ2V0RGly
ZWN0b3J5SGFuZGxlKCJkaXIiLCB7ICJjcmVhdGUiIDogdHJ1ZSB9KS50aGVuKChoYW5kbGUpID0+
IHsKKyAgICAgICAgZGlySGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImRpckhhbmRsZS5uYW1lIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImRpckhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjaGVja0lmU2Ft
ZUVudHJ5KHJvb3RIYW5kbGUsIGRpckhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7
CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiBjaGVj
a0lmU2FtZUVudHJ5KGhhbmRsZTEsIGhhbmRsZTIpCit7CisgICAgaGFuZGxlMS5pc1NhbWVFbnRy
eShoYW5kbGUyKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaXNTYW1lRW50cnkgPSByZXN1
bHQ7CisgICAgICAgIHNob3VsZEJlRmFsc2UoImlzU2FtZUVudHJ5Iik7CisgICAgICAgIGNyZWF0
ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCB0cnVlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsK
KyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIGNyZWF0
ZUZpbGVIYW5kbGUoZnJvbUhhbmRsZSwgY3JlYXRlKSB7CisgICAgbGV0IG9wdGlvbnMgPSB7ICJj
cmVhdGUiIDogY3JlYXRlIH07CisgICAgZnJvbUhhbmRsZS5nZXRGaWxlSGFuZGxlKCJmaWxlIiwg
b3B0aW9ucykudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGZpbGVIYW5kbGUgPSBoYW5kbGU7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5uYW1lIiwgImZpbGUi
KTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLmtpbmQiLCAiZmls
ZSIpOworICAgICAgICByZXNvbHZlUGF0aCgpOworICAgIH0pLmNhdGNoKChlcnJvcikgPT4gewor
ICAgICAgICBpZiAoY3JlYXRlKSB7CisgICAgICAgICAgICBmaW5pc2hUZXN0KGVycm9yKTsKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBjcmVhdGVFcnJvciA9IGVycm9y
OworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNyZWF0ZUVycm9yLnRvU3RyaW5nKCki
LCAiTm90Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUuIik7Cisg
ICAgICAgIGZpbmlzaFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVzb2x2ZVBhdGgo
KSB7CisgICAgcm9vdEhhbmRsZS5yZXNvbHZlKGZpbGVIYW5kbGUpLnRoZW4oKHJlc3VsdCkgPT4g
eworICAgICAgICBoYW5kbGVOYW1lcyA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmUoImhhbmRs
ZU5hbWVzLmxlbmd0aCIsICIyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFu
ZGxlTmFtZXNbMF0iLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaGFu
ZGxlTmFtZXNbMV0iLCAiZmlsZSIpOworICAgICAgICByZW1vdmVFbnRyeShkaXJIYW5kbGUsICJm
aWxlIik7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJy
b3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZW1vdmVFbnRyeShmcm9tSGFuZGxlLCBuYW1l
KSB7CisgICAgZnJvbUhhbmRsZS5yZW1vdmVFbnRyeShuYW1lKS50aGVuKChyZXN1bHQpID0+IHsK
KyAgICAgICAgLy8gTm8gZXJyb3IgbWVhbnMgaXQgaXMgcmVtb3ZlZC4KKyAgICAgICAgY3JlYXRl
RmlsZUhhbmRsZShkaXJIYW5kbGUsIGZhbHNlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHsK
KyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGdldERpcmVjdG9yeSgp
OworfSBlbHNlIHsKKyAgICBmaW5pc2hUZXN0KCJ3aW5kb3cudGVzdFJ1bm5lciBpcyBub3QgYXZh
aWxhYmxlIik7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439124</attachid>
            <date>2021-09-23 22:23:32 -0700</date>
            <delta_ts>2021-09-24 00:22:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230484-20210923222330.patch</filename>
            <type>text/plain</type>
            <size>187692</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTNkMTQ0MDE4OGY1ODA4
ODE1MzU2NzQyNjQyMzNjODQ4NzdlZGM3MC4uZjExZmMwNzE2YjAxMDQzZWE0ZGI5YzJmZGQxNDRl
ZjQ4NDVlNGQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU5IEBACisyMDIxLTA5LTIzICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBv
cnQgZm9yIEZpbGUgU3lzdGVtIEFjY2VzcyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDQ4NAorICAgICAgICByZGFyOi8vODM0MDU4OTAKKwor
ICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEltcGxlbWVudGVk
IEZpbGVTeXN0ZW1IYW5kbGUgYW5kIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUgKGV4Y2VwdCBk
aXJlY3RvcnkgaXRlcmF0aW9uKSBpbnRlcmZhY2VzIGZvciBPcmlnaW4gCisgICAgICAgIFByaXZh
dGUgRmlsZSBTeXN0ZW0uCisgICAgICAgIFNwZWM6IGh0dHBzOi8vd2ljZy5naXRodWIuaW8vZmls
ZS1zeXN0ZW0tYWNjZXNzLyNhcGktZmlsZXN5c3RlbWhhbmRsZQorICAgICAgICAgICAgICBodHRw
czovL3dpY2cuZ2l0aHViLmlvL2ZpbGUtc3lzdGVtLWFjY2Vzcy8jYXBpLWZpbGVzeXN0ZW1kaXJl
Y3RvcnloYW5kbGUKKyAgICAgICAgICAgICAgaHR0cHM6Ly93aWNnLmdpdGh1Yi5pby9maWxlLXN5
c3RlbS1hY2Nlc3MvI3NhbmRib3hlZC1maWxlc3lzdGVtCisKKyAgICAgICAgVGVzdDogc3RvcmFn
ZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKKworICAgICAg
ICAqIEhlYWRlcnMuY21ha2U6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Z2V0RmlsZUhhbmRsZSk6CisgICAgICAg
IChXZWJDb3JlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUp
OgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVtb3ZlRW50
cnkpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6cmVzb2x2
ZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuaDoKKyAgICAgICAgKGlzVHlwZSk6CisgICAgICAgICogTW9kdWxlcy9maWxlc3lz
dGVtYWNjZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3Rl
bUZpbGVIYW5kbGU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKToKKyAgICAgICAgKiBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaDoKKyAgICAgICAgKGlzVHlwZSk6
CisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6RmlsZVN5c3RlbUhhbmRsZSk6
CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeSk6IERlbGV0
ZWQuCisgICAgICAgICogTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGU6OmltcGwgY29uc3QpOgorICAg
ICAgICAqIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlkbDoKKyAg
ICAgICAgKiBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaDog
QWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbDo6fkZpbGVTeXN0
ZW1IYW5kbGVJbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJv
dmlkZXIuaDoKKyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZUNvbm5lY3Rpb24uaDoK
KyAgICAgICAgKiBNb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Y29ubmVjdGlvbkluZm8pOgorICAgICAgICAoV2ViQ29yZTo6U3RvcmFnZU1hbmFn
ZXI6OnBlcnNpc3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6cGVyc2lz
dCk6CisgICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbUFjY2Vzc0dl
dERpcmVjdG9yeSk6CisgICAgICAgICogTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmg6
CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUhhbmRsZUN1
c3RvbS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6CisgICAgICAgIChXZWJD
b3JlOjp0b0pTTmV3bHlDcmVhdGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9Xb3JrZXJNb2R1
bGVTY3JpcHRMb2FkZXIuaDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorCiAyMDIxLTA5LTIzICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUu
Y29tPgogCiAgICAgICAgIE1vdmUgbW9yZSBsaW5rZWQtb24tb3ItYWZ0ZXIgY2hlY2tzIHRvIFdl
YkNvcmU6OmxpbmtlZE9uT3JBZnRlcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDViYjliZjMxNzI1OWQ4Mzg5MDZl
YTBiOWNlMWYyMTBjMmFiNzUzZTUuLjM4ZDFjZWMwZjVmMTRkZjJiOGNkM2ZhNzZlNWQzNzZlM2Ix
YzMwNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsODkgQEAKKzIwMjEtMDktMjMgIFNpaHVpIExpdSAg
PHNpaHVpX2xpdUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgc3VwcG9ydCBmb3Ig
RmlsZSBTeXN0ZW0gQWNjZXNzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjMwNDg0CisgICAgICAgIHJkYXI6Ly84MzQwNTg5MAorCisgICAgICAg
IFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSW50cm9kdWNlIEZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlciB0byBtYW5hZ2UgZmlsZSBoYW5kbGVzLiBFYWNoIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlIGNvcnJlc3BvbmRzIHRvIGEgCisgICAgICAgIEZpbGVTeXN0ZW1IYW5kbGUg
aW4gd2ViIHByb2Nlc3MuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vz
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpyZW1vdmVTdG9yYWdlTWFu
YWdlckZvclNlc3Npb24pOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5
c3RlbVN0b3JhZ2VFcnJvci5oOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdDo6Y29udmVydFRvRXhj
ZXB0aW9uQ29kZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aXNTYW1lRW50cnkpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZSk6CisgICAgICAgIChX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpnZXRGaWxlSGFuZGxlKToKKyAgICAgICAg
KFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZW1vdmVFbnRyeSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKToKKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmg6IEFk
ZGVkLgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6aWRlbnRpZmll
ciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpwYXRo
IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllci5oOiBBZGRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9z
dG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6cmVnaXN0ZXJIYW5k
bGUpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Ojp1
bnJlZ2lzdGVySGFuZGxlKToKKyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVSZWdpc3RyeTo6Z2V0SGFuZGxlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdl
L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaDogQWRkZWQuCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwOiBBZGRlZC4K
KyAgICAgICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpGaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6
On5GaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUhhbmRsZSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0UGF0aCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5KToKKyAgICAgICAgKiBOZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oOiBBZGRlZC4KKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHA6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5hZ2Vy
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjp+TmV0d29ya1N0b3Jh
Z2VNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbG9z
ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6c3RhcnRSZWNlaXZp
bmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFn
ZU1hbmFnZXI6OnN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24pOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsZWFyU3RvcmFnZUZvclRlc3RpbmcpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJl
Y3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmlzU2FtZUVu
dHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXRGaWxlSGFu
ZGxlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3Rv
cnlIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnJlbW92
ZUVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpyZXNvbHZl
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnNlc3Npb25JRCBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3Jr
U3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvc3Rv
cmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0
b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlQnVja2V0Ojpjb25uZWN0aW9uQ2xvc2VkKToKKyAgICAgICAg
KFdlYktpdDo6T3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXQ6OnR5cGVTdG9yYWdl
UGF0aCBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpTdG9y
YWdlQnVja2V0OjpmaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIpOgorICAgICAgICAoV2ViS2l0OjpP
cmlnaW5TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNsb3NlZCk6CisgICAgICAgIChXZWJLaXQ6
Ok9yaWdpblN0b3JhZ2VNYW5hZ2VyOjpkZWZhdWx0QnVja2V0KToKKyAgICAgICAgKFdlYktpdDo6
T3JpZ2luU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QpOgorICAgICAgICAoV2ViS2l0OjpPcmlnaW5T
dG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmg6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9m
b3J3YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBXZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKToKKyAgICAg
ICAgKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eTo6RmlsZVN5c3RlbVN0b3Jh
Z2VIYW5kbGVQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UHJveHk6OmNvbm5lY3Rpb25DbG9zZWQpOgorICAgICAgICAoV2ViS2l0OjpGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5Ojppc1NhbWVFbnRyeSk6CisgICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmdldEZpbGVIYW5kbGUpOgorICAgICAgICAoV2ViS2l0OjpG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUpOgorICAgICAg
ICAoV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZW1vdmVFbnRyeSk6Cisg
ICAgICAgIChXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OnJlc29sdmUpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVQcm94eS5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YlN0b3JhZ2VDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZUNvbm5l
Y3Rpb246OmdldFBlcnNpc3RlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlN0b3JhZ2VDb25uZWN0
aW9uOjpwZXJzaXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViU3RvcmFnZUNvbm5lY3Rpb246OmZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkpOgorICAgICAgICAoV2ViS2l0OjpXZWJTdG9yYWdlQ29ubmVj
dGlvbjo6cGVyc2lzdGVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlN0b3JhZ2VDb25uZWN0aW9uLmg6CisKIDIwMjEtMDktMjMgIFRpbSBIb3J0b24g
IDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBtb3JlIGxpbmtlZC1v
bi1vci1hZnRlciBjaGVja3MgdG8gV2ViQ29yZTo6bGlua2VkT25PckFmdGVyKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlCmluZGV4IGYyOGRkYTY3MTlhYjU5ZmMwYjU2ODQ4ZmU4NGI1ZDI0YWQ1MjU0ZTkuLmVj
MDUwMTQyYTVmYzY2MTNkNzczNWY2NWY5NDlmNzgxZDhjZTBmYzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFr
ZQpAQCAtNDAsNiArNDAsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJT
CiAgICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aAogICAgIE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oCiAg
ICAgTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaAorICAgIE1vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlSW1wbC5oCiAgICAgTW9kdWxlcy9m
aWxlc3lzdGVtYWNjZXNzL1N0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oCiAKICAgICBN
b2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLmNwcAppbmRleCBkOTVkNjkyNDNmNTA0MDlkZTMyNmZhYTlhY2ZlMDBjYTFm
NmRhMmUxLi4zYTBjYWU4OWJkZWU1MTEwZmQ0OTE1Y2JhOGU0YzFhNTllNzUxMzliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVt
YWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwCkBAIC0yNiw0MSArMjYsNjQgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtSGFuZGxlSW1wbC5oIgogI2luY2x1ZGUgIkpTRE9N
UHJvbWlzZURlZmVycmVkLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNP
X0FMTE9DQVRFRF9JTVBMKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUpOwogCi1SZWY8RmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZT4gRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0
cmluZyYmIG5hbWUpCitSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTo6Y3JlYXRlKFN0cmluZyYmIG5hbWUsIFJlZjxGaWxlU3lzdGVtSGFuZGxl
SW1wbD4mJiBpbXBsKQogewotICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUoV1RGTW92ZShuYW1lKSkpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkpOwog
fQogCi1GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
KFN0cmluZyYmIG5hbWUpCi0gICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShuYW1lKSkKK0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGU6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0
ZW1IYW5kbGVJbXBsPiYmIGltcGwpCisgICAgOiBGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1I
YW5kbGU6OktpbmQ6OkRpcmVjdG9yeSwgV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkKIHsK
IH0KIAotdm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXRGaWxlSGFuZGxlKGNvbnN0
IFN0cmluZyYsIHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0Rmls
ZU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxl
SGFuZGxlPj4mJiBwcm9taXNlKQordm9pZCBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpnZXRG
aWxlSGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpHZXRGaWxlT3B0aW9ucz4gb3B0aW9ucywgRE9NUHJvbWlzZURlZmVycmVk
PElETEludGVyZmFjZTxGaWxlU3lzdGVtRmlsZUhhbmRsZT4+JiYgcHJvbWlzZSkKIHsKLSAgICBw
cm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1l
bnRlZCJfcyB9KTsKKyAgICBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5ID0gb3B0aW9ucyA/IG9wdGlv
bnMtPmNyZWF0ZSA6IGZhbHNlOworICAgIGltcGwoKS5nZXRGaWxlSGFuZGxlKG5hbWUsIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBbbmFtZSwgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVz
dWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsK
KworICAgICAgICBwcm9taXNlLnJlc29sdmUoRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShT
dHJpbmcgeyBuYW1lIH0sIHJlc3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSkpOworICAgIH0pOwog
fQogCi12b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShj
b25zdCBTdHJpbmcmLCBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6Okdl
dERpcmVjdG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGU6OmdldERpcmVjdG9yeUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0
aW9uYWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6R2V0RGlyZWN0b3J5T3B0aW9ucz4gb3B0
aW9ucywgRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5v
dFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnkgPSBvcHRpb25zID8gb3B0aW9ucy0+Y3JlYXRlIDogZmFsc2U7CisgICAgaW1w
bCgpLmdldERpcmVjdG9yeUhhbmRsZShuYW1lLCBjcmVhdGVJZk5lY2Vzc2FyeSwgW25hbWUsIHBy
b21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAg
IGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gcHJvbWlzZS5y
ZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICAgICAgcHJvbWlzZS5yZXNv
bHZlKEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6OmNyZWF0ZShTdHJpbmcgeyBuYW1lIH0sIHJl
c3VsdC5yZWxlYXNlUmV0dXJuVmFsdWUoKSkpOworICAgIH0pOwogfQogCi12b2lkIEZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGU6OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYsIHN0ZDo6b3B0aW9u
YWw8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6UmVtb3ZlT3B0aW9ucz4sIERPTVByb21pc2VE
ZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCit2b2lkIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU6
OnJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlOjpSZW1vdmVPcHRpb25zPiBvcHRpb25zLCBET01Qcm9taXNlRGVmZXJy
ZWQ8dm9pZD4mJiBwcm9taXNlKQogewotICAgIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IE5v
dFN1cHBvcnRlZEVycm9yLCAiTm90IGltcGxlbWVudGVkIl9zIH0pOworICAgIGJvb2wgZGVsZXRl
UmVjdXJzaXZlbHkgPSBvcHRpb25zID8gb3B0aW9ucy0+cmVjdXJzaXZlIDogZmFsc2U7CisgICAg
aW1wbCgpLnJlbW92ZUVudHJ5KG5hbWUsIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBbcHJvbWlzZSA9IFdU
Rk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgcHJvbWlzZS5z
ZXR0bGUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICB9KTsKIH0KIAotdm9pZCBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlOjpyZXNvbHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNl
RGVmZXJyZWQ8SURMU2VxdWVuY2U8SURMVVNWU3RyaW5nPj4mJiBwcm9taXNlKQordm9pZCBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlOjpyZXNvbHZlKGNvbnN0IEZpbGVTeXN0ZW1IYW5kbGUmIGhh
bmRsZSwgRE9NUHJvbWlzZURlZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYgcHJv
bWlzZSkKIHsKLSAgICBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJv
ciwgIk5vdCBpbXBsZW1lbnRlZCJfcyB9KTsKKyAgICBpbXBsKCkucmVzb2x2ZShoYW5kbGUuaW1w
bCgpLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsK
KyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBw
cm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgICAgICBwcm9t
aXNlLnJlc29sdmUocmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKTsKKyAgICB9KTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmgKaW5kZXggNGFmMWQ5ZGI3MjQyODQ5MjQ3NDI5MWFkZWQ0OGM5NDdmNDM0NTAyYi4uOTJhMTJi
NDcwY2U5MTBkZmRlY2QxOGU5MWZmOGUxMzViZjQ5ZDZiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZS5oCkBAIC0zMSw3ICszMSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgRmlsZVN5c3RlbUZpbGVIYW5kbGU7CiAKLWNsYXNzIEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUgOiBwdWJsaWMgRmlsZVN5c3RlbUhhbmRsZSB7CitjbGFzcyBGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlIGZpbmFsIDogcHVibGljIEZpbGVTeXN0ZW1IYW5kbGUgewogICAgIFdURl9N
QUtFX0lTT19BTExPQ0FURUQoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSk7CiBwdWJsaWM6CiAg
ICAgc3RydWN0IEdldEZpbGVPcHRpb25zIHsKQEAgLTQ2LDE0ICs0NiwxOCBAQCBwdWJsaWM6CiAg
ICAgICAgIGJvb2wgcmVjdXJzaXZlIHsgZmFsc2UgfTsKICAgICB9OwogCi0gICAgc3RhdGljIFJl
ZjxGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlPiBjcmVhdGUoU3RyaW5nJiYpOworICAgIFdFQkNP
UkVfRVhQT1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZT4gY3JlYXRlKFN0
cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYpOwogICAgIHZvaWQgZ2V0RmlsZUhh
bmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIHN0ZDo6b3B0aW9uYWw8R2V0RmlsZU9wdGlvbnM+LCBE
T01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJmYWNlPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPj4mJik7
CiAgICAgdm9pZCBnZXREaXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBzdGQ6Om9w
dGlvbmFsPEdldERpcmVjdG9yeU9wdGlvbnM+LCBET01Qcm9taXNlRGVmZXJyZWQ8SURMSW50ZXJm
YWNlPEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU+PiYmKTsKICAgICB2b2lkIHJlbW92ZUVudHJ5
KGNvbnN0IFN0cmluZyYgbmFtZSwgc3RkOjpvcHRpb25hbDxSZW1vdmVPcHRpb25zPiwgRE9NUHJv
bWlzZURlZmVycmVkPHZvaWQ+JiYpOwogICAgIHZvaWQgcmVzb2x2ZShjb25zdCBGaWxlU3lzdGVt
SGFuZGxlJiwgRE9NUHJvbWlzZURlZmVycmVkPElETFNlcXVlbmNlPElETFVTVlN0cmluZz4+JiYp
OwogCiBwcml2YXRlOgotICAgIGV4cGxpY2l0IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3Ry
aW5nJiYpOworICAgIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUoU3RyaW5nJiYsIFJlZjxGaWxl
U3lzdGVtSGFuZGxlSW1wbD4mJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKK1NQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6RmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSkKKyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZSYgaGFuZGxlKSB7IHJldHVybiBoYW5kbGUua2luZCgpID09IFdlYkNvcmU6OkZpbGVTeXN0
ZW1IYW5kbGU6OktpbmQ6OkRpcmVjdG9yeTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0Zp
bGVTeXN0ZW1GaWxlSGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3Rl
bWFjY2Vzcy9GaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAKaW5kZXggOWVkYzIwNGUxN2VlMTMzNGYz
MDc3MGUyYmE3NDUwNTlkYTU4NzBhMi4uZjE1ZTAxMWQ2ZjYzZTU3MDM5YzZlOTQ2MjdlYTI1YWQw
OWYwZTEyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwCkBAIC0yNiw2ICsyNiw3
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRmlsZVN5c3RlbUZpbGVIYW5kbGUu
aCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgiCiAjaW5jbHVkZSAiSlNET01Q
cm9taXNlRGVmZXJyZWQuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgogCkBA
IC0zMywxMyArMzQsMTMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxM
T0NBVEVEX0lNUEwoRmlsZVN5c3RlbUZpbGVIYW5kbGUpOwogCi1SZWY8RmlsZVN5c3RlbUZpbGVI
YW5kbGU+IEZpbGVTeXN0ZW1GaWxlSGFuZGxlOjpjcmVhdGUoU3RyaW5nJiYgbmFtZSkKK1JlZjxG
aWxlU3lzdGVtRmlsZUhhbmRsZT4gRmlsZVN5c3RlbUZpbGVIYW5kbGU6OmNyZWF0ZShTdHJpbmcm
JiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+JiYgaW1wbCkKIHsKLSAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBGaWxlU3lzdGVtRmlsZUhhbmRsZShXVEZNb3ZlKG5hbWUpKSk7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgRmlsZVN5c3RlbUZpbGVIYW5kbGUoV1RGTW92ZShuYW1lKSwg
V1RGTW92ZShpbXBsKSkpOwogfQogCi1GaWxlU3lzdGVtRmlsZUhhbmRsZTo6RmlsZVN5c3RlbUZp
bGVIYW5kbGUoU3RyaW5nJiYgbmFtZSkKLSAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3Rl
bUhhbmRsZTo6S2luZDo6RmlsZSwgV1RGTW92ZShuYW1lKSkKK0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
OjpGaWxlU3lzdGVtRmlsZUhhbmRsZShTdHJpbmcmJiBuYW1lLCBSZWY8RmlsZVN5c3RlbUhhbmRs
ZUltcGw+JiYgaW1wbCkKKyAgICA6IEZpbGVTeXN0ZW1IYW5kbGUoRmlsZVN5c3RlbUhhbmRsZTo6
S2luZDo6RmlsZSwgV1RGTW92ZShuYW1lKSwgV1RGTW92ZShpbXBsKSkKIHsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1G
aWxlSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmls
ZVN5c3RlbUZpbGVIYW5kbGUuaAppbmRleCAwYTdmYTRlMzhiOGE1MDQ4MGYzZTMyMjc5ZGMzOTkx
YzA0ZTNjYjkxLi40ODI5YmIyNDE3NzljNzU0ZWE3YTU4N2FlNmQxYTFlOTI3MmRkMzEzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUZpbGVIYW5kbGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nl
c3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaApAQCAtMzQsMTEgKzM0LDE1IEBAIGNsYXNzIEZpbGU7
CiBjbGFzcyBGaWxlU3lzdGVtRmlsZUhhbmRsZSBmaW5hbCA6IHB1YmxpYyBGaWxlU3lzdGVtSGFu
ZGxlIHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEZpbGVTeXN0ZW1GaWxlSGFuZGxlKTsK
IHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPiBjcmVhdGUoU3Ry
aW5nJiYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8RmlsZVN5c3RlbUZpbGVIYW5k
bGU+IGNyZWF0ZShTdHJpbmcmJiwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKICAgICB2
b2lkIGdldEZpbGUoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxlPj4mJik7CiAK
IHByaXZhdGU6Ci0gICAgZXhwbGljaXQgRmlsZVN5c3RlbUZpbGVIYW5kbGUoU3RyaW5nJiYpOwor
ICAgIEZpbGVTeXN0ZW1GaWxlSGFuZGxlKFN0cmluZyYmLCBSZWY8RmlsZVN5c3RlbUhhbmRsZUlt
cGw+JiYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCitTUEVDSUFMSVpFX1RZUEVf
VFJBSVRTX0JFR0lOKFdlYkNvcmU6OkZpbGVTeXN0ZW1GaWxlSGFuZGxlKQorICAgIHN0YXRpYyBi
b29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlJiBoYW5kbGUpIHsgcmV0
dXJuIGhhbmRsZS5raW5kKCkgPT0gV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZTo6S2luZDo6Rmls
ZTsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuY3Bw
CmluZGV4IDIxMjFiMWNjMjUxNTE4YmI5NWRmMDY5NDExYzIxMTJiNjA4NTBmYmYuLjRhZjYxMTA4
YjE3MWYyNjdhNDkyZmI2ZTU1MDIwNDZhNjJjZDE0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5j
cHAKQEAgLTMzLDE1ICszMywyMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGaWxlU3lzdGVtSGFuZGxlKTsKIAotRmlsZVN5c3RlbUhhbmRsZTo6
RmlsZVN5c3RlbUhhbmRsZShGaWxlU3lzdGVtSGFuZGxlOjpLaW5kIGtpbmQsIFN0cmluZyYmIG5h
bWUpCitGaWxlU3lzdGVtSGFuZGxlOjpGaWxlU3lzdGVtSGFuZGxlKEZpbGVTeXN0ZW1IYW5kbGU6
OktpbmQga2luZCwgU3RyaW5nJiYgbmFtZSwgUmVmPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiYmIGlt
cGwpCiAgICAgOiBtX2tpbmQoa2luZCkKICAgICAsIG1fbmFtZShXVEZNb3ZlKG5hbWUpKQorICAg
ICwgbV9pbXBsKFdURk1vdmUoaW1wbCkpCiB7CiB9CiAKLXZvaWQgRmlsZVN5c3RlbUhhbmRsZTo6
aXNTYW1lRW50cnkoY29uc3QgRmlsZVN5c3RlbUhhbmRsZSYsIERPTVByb21pc2VEZWZlcnJlZDxJ
RExCb29sZWFuPiYmIHByb21pc2UpCitGaWxlU3lzdGVtSGFuZGxlOjp+RmlsZVN5c3RlbUhhbmRs
ZSgpID0gZGVmYXVsdDsKKwordm9pZCBGaWxlU3lzdGVtSGFuZGxlOjppc1NhbWVFbnRyeShGaWxl
U3lzdGVtSGFuZGxlJiBoYW5kbGUsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmIHBy
b21pc2UpIGNvbnN0CiB7Ci0gICAgcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9y
dGVkRXJyb3IsICJOb3QgaW1wbGVtZW50ZWQiX3MgfSk7CisgICAgaWYgKG1fa2luZCAhPSBoYW5k
bGUua2luZCgpIHx8IG1fbmFtZSAhPSBoYW5kbGUubmFtZSgpKQorICAgICAgICByZXR1cm4gcHJv
bWlzZS5yZXNvbHZlKGZhbHNlKTsKKworICAgIG1faW1wbC0+aXNTYW1lRW50cnkoaGFuZGxlLmlt
cGwoKSwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7
CisgICAgICAgIHByb21pc2Uuc2V0dGxlKFdURk1vdmUocmVzdWx0KSk7CisgICAgfSk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5oCmluZGV4IDc1NGU0OTQx
OWJiNjM3ZjE3ZjA3ZmQ4MDMxOTlmMjIxODI3Njk5N2EuLmU1Y2Y3MDIzYTY5NTlkNjhkMzk1NDFm
MDY3MDc2ZWQ3M2JmNmZlYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmls
ZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaApAQCAtMzEsMjkgKzMxLDMy
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHRlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBET01Q
cm9taXNlRGVmZXJyZWQ7CisKK2NsYXNzIEZpbGVTeXN0ZW1IYW5kbGVJbXBsOwogZW51bSBjbGFz
cyBQZXJtaXNzaW9uU3RhdGUgOiB1aW50OF90OwogCiBjbGFzcyBGaWxlU3lzdGVtSGFuZGxlIDog
cHVibGljIFJlZkNvdW50ZWQ8RmlsZVN5c3RlbUhhbmRsZT4gewogICAgIFdURl9NQUtFX0lTT19B
TExPQ0FURUQoRmlsZVN5c3RlbUhhbmRsZSk7CiBwdWJsaWM6CisgICAgdmlydHVhbCB+RmlsZVN5
c3RlbUhhbmRsZSgpOworCiAgICAgZW51bSBjbGFzcyBLaW5kIDogdWludDhfdCB7CiAgICAgICAg
IEZpbGUsCiAgICAgICAgIERpcmVjdG9yeQogICAgIH07Ci0KLSAgICB2aXJ0dWFsIH5GaWxlU3lz
dGVtSGFuZGxlKCkgPSBkZWZhdWx0OwotCiAgICAgS2luZCBraW5kKCkgY29uc3QgeyByZXR1cm4g
bV9raW5kOyB9CiAgICAgY29uc3QgU3RyaW5nJiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1l
OyB9CisgICAgRmlsZVN5c3RlbUhhbmRsZUltcGwmIGltcGwoKSBjb25zdCB7IHJldHVybiBtX2lt
cGwuZ2V0KCk7IH0KIAotICAgIHZvaWQgaXNTYW1lRW50cnkoY29uc3QgRmlsZVN5c3RlbUhhbmRs
ZSYsIERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPiYmKTsKKyAgICB2b2lkIGlzU2FtZUVu
dHJ5KEZpbGVTeXN0ZW1IYW5kbGUmLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJikg
Y29uc3Q7CiAKIHByb3RlY3RlZDoKLSAgICBGaWxlU3lzdGVtSGFuZGxlKEtpbmQsIFN0cmluZyYm
IG5hbWUpOworICAgIEZpbGVTeXN0ZW1IYW5kbGUoS2luZCwgU3RyaW5nJiYgbmFtZSwgUmVmPEZp
bGVTeXN0ZW1IYW5kbGVJbXBsPiYmKTsKIAogcHJpdmF0ZToKICAgICBLaW5kIG1fa2luZCB7IEtp
bmQ6OkZpbGUgfTsKICAgICBTdHJpbmcgbV9uYW1lOworICAgIFJlZjxGaWxlU3lzdGVtSGFuZGxl
SW1wbD4gbV9pbXBsOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1I
YW5kbGUuaWRsCmluZGV4IDIwOGU3NDVjYzNiZmM0Yzc5NzZlYzAyOGUxYjRkZDYyYWFmZDAzMDgu
LjliZDAxMDAxMWJmM2M1Yzg3N2RlNjgzZDZhYTgxNmRiZWFhMTBmYmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtSGFuZGxlLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3Rl
bUhhbmRsZS5pZGwKQEAgLTI5LDYgKzI5LDcgQEAgZW51bSBGaWxlU3lzdGVtSGFuZGxlS2luZCB7
CiB9OwogCiBbCisgICAgQ3VzdG9tVG9KU09iamVjdCwKICAgICBFeHBvc2VkPShXaW5kb3csV29y
a2VyKSwKICAgICBFbmFibGVkQnlTZXR0aW5nPUZpbGVTeXN0ZW1BY2Nlc3MsCiAgICAgU2VjdXJl
Q29udGV4dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNj
ZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZpbGVz
eXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZUltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZDhkYTQyMjdj
ZTBjYzdmMGMxZjBiMjVkOGQ2YTBhMDcwNDMwZWQ2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgK
QEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8
d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTsKK2NsYXNzIEZpbGVTeXN0ZW1GaWxlSGFuZGxlOwor
dGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOworCitjbGFzcyBGaWxlU3lzdGVt
SGFuZGxlSW1wbCA6IHB1YmxpYyBSZWZDb3VudGVkPEZpbGVTeXN0ZW1IYW5kbGVJbXBsPiB7Citw
dWJsaWM6CisgICAgdmlydHVhbCB+RmlsZVN5c3RlbUhhbmRsZUltcGwoKSB7IH0KKyAgICB2aXJ0
dWFsIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtSGFuZGxlSW1wbCYsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgZ2V0RmlsZUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRl
SWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8UmVmPEZpbGVT
eXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0RGlyZWN0
b3J5SGFuZGxlKGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxSZWY8RmlsZVN5c3RlbUhhbmRsZUltcGw+
PiYmKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCByZW1vdmVFbnRyeShjb25zdCBTdHJpbmcm
IG5hbWUsIGJvb2wgcmVjdXJzaXZlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9y
PHZvaWQ+JiYpPiYmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHJlc29sdmUoRmlsZVN5c3RlbUhh
bmRsZUltcGwmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPFZlY3RvcjxTdHJp
bmc+PiYmKT4mJikgPSAwOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL0R1bW15U3RvcmFnZVByb3ZpZGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaApp
bmRleCA5MTQ0YTNkN2EzNDRhMGM4YjMxZjk0YjY2YWYwODc4NzJlNzEwYzZhLi44MTE5ZTMzNjJi
NDAwMTdhOTY0Nzk5MzE0OGE1NDNlYzE2ODhhZTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3N0b3JhZ2UvRHVtbXlTdG9yYWdlUHJvdmlkZXIuaApAQCAtMjUsNiArMjUs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJbXBsLmgi
CiAjaW5jbHVkZSAiU3RvcmFnZVByb3ZpZGVyLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAg
LTQyLDE1ICs0MywyMCBAQCBwcml2YXRlOgogICAgICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgRHVtbXlTdG9yYWdlQ29ubmVjdGlvbigpKTsKICAgICAgICAgfQogCi0gICAgICAgIHZvaWQg
cGVyc2lzdGVkKENsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICB2b2lkIGdldFBlcnNpc3RlZChjb25zdCBDbGll
bnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKSBmaW5hbAogICAgICAgICB7CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxz
ZSk7CiAgICAgICAgIH0KIAotICAgICAgICB2b2lkIHBlcnNpc3QoQ2xpZW50T3JpZ2luJiYsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAg
IHZvaWQgcGVyc2lzdChjb25zdCBDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBmaW5hbAogICAgICAgICB7CiAgICAgICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CiAgICAgICAgIH0KKworICAgICAgICB2b2lkIGZp
bGVTeXN0ZW1HZXREaXJlY3RvcnkoY29uc3QgQ2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRs
ZUltcGw+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgZmluYWwKKyAgICAgICAgeworICAgICAg
ICAgICAgY29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IgfSk7
CisgICAgICAgIH0KICAgICB9OwogCiAgICAgU3RvcmFnZUNvbm5lY3Rpb24mIHN0b3JhZ2VDb25u
ZWN0aW9uKCkgZmluYWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFn
ZS9TdG9yYWdlQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0
b3JhZ2VDb25uZWN0aW9uLmgKaW5kZXggZGQxNjI0YWZiYTc1OTgyNWY3YWRmNjhkZDczNGZmZWQ2
OGM3NTUzMy4uYWE5N2Y2M2E1YjY2YzlmODBmYWM4OTNkMzVmMWMyZTBjZDEzNzE0OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VDb25uZWN0aW9uLmgK
QEAgLTMwLDEzICszMCwxNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZpbGVT
eXN0ZW1IYW5kbGVJbXBsOwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIEV4Y2VwdGlvbk9yOwog
c3RydWN0IENsaWVudE9yaWdpbjsKIAogY2xhc3MgU3RvcmFnZUNvbm5lY3Rpb24gOiBwdWJsaWMg
UmVmQ291bnRlZDxTdG9yYWdlQ29ubmVjdGlvbj4gewogcHVibGljOgogICAgIHZpcnR1YWwgflN0
b3JhZ2VDb25uZWN0aW9uKCkgPSBkZWZhdWx0OwotICAgIHZpcnR1YWwgdm9pZCBwZXJzaXN0ZWQo
Q2xpZW50T3JpZ2luJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgcGVyc2lzdChDbGllbnRPcmlnaW4mJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBnZXRQZXJzaXN0ZWQoY29uc3Qg
Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgPSAwOworICAg
IHZpcnR1YWwgdm9pZCBwZXJzaXN0KGNvbnN0IENsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZmlsZVN5c3RlbUdldERp
cmVjdG9yeShjb25zdCBDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2Vw
dGlvbk9yPFJlZjxGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmKSA9IDA7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0
b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdl
L1N0b3JhZ2VNYW5hZ2VyLmNwcAppbmRleCBmYjU0Zjk4MGEzNTUwMmJjMTYzMzJmNzc3ZjE4MmVi
YWYxNTczMDllLi5kYzU2YzY3MWY4MWJkMmFlYmIyNGIyMjU2Mzc2ZDBkMzJkYzNiMzFmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHAK
QEAgLTI3LDggKzI3LDExIEBACiAjaW5jbHVkZSAiU3RvcmFnZU1hbmFnZXIuaCIKIAogI2luY2x1
ZGUgIkNsaWVudE9yaWdpbi5oIgorI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAi
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1IYW5kbGVJ
bXBsLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIKKyNpbmNsdWRlICJKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JCYXNlLmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5l
cy5oPgpAQCAtNDcsNTMgKzUwLDY4IEBAIFN0b3JhZ2VNYW5hZ2VyOjpTdG9yYWdlTWFuYWdlcihO
YXZpZ2F0b3JCYXNlJiBuYXZpZ2F0b3IpCiB7CiB9CiAKLXZvaWQgU3RvcmFnZU1hbmFnZXI6OnBl
cnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9taXNlKQorc3RydWN0
IENvbm5lY3Rpb25JbmZvIHsKKyAgICBTdG9yYWdlQ29ubmVjdGlvbiYgY29ubmVjdGlvbjsKKyAg
ICBDbGllbnRPcmlnaW4gb3JpZ2luOworfTsKKworc3RhdGljIEV4Y2VwdGlvbk9yPENvbm5lY3Rp
b25JbmZvPiBjb25uZWN0aW9uSW5mbyhOYXZpZ2F0b3JCYXNlKiBuYXZpZ2F0b3IpCiB7Ci0gICAg
aWYgKCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlv
biB7IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdhdG9yIGRvZXMgbm90IGV4aXN0Il9zIH0pOwor
ICAgIGlmICghbmF2aWdhdG9yKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0
YXRlRXJyb3IsICJOYXZpZ2F0b3IgZG9lcyBub3QgZXhpc3QiX3MgfTsKIAotICAgIGF1dG8gY29u
dGV4dCA9IG1fbmF2aWdhdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CisgICAgYXV0byBj
b250ZXh0ID0gbmF2aWdhdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFj
b250ZXh0KQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJUaGUgY29udGV4dCBpcyBpbnZhbGlkIl9zIH0pOworICAgICAgICByZXR1
cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJDb250ZXh0IGlzIGludmFsaWQiX3Mg
fTsKIAorICAgIGF1dG8qIG9yaWdpbiA9IGNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCk7CisgICAg
aWYgKCFvcmlnaW4pCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJv
ciwgIk9yaWdpbiBpcyBpbnZhbGlkIl9zIH07CisgICAgCiAgICAgYXV0byBjb25uZWN0aW9uID0g
Y29udGV4dC0+c3RvcmFnZUNvbm5lY3Rpb24oKTsKICAgICBpZiAoIWNvbm5lY3Rpb24pCi0gICAg
ICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
IlRoZSBjb25uZWN0aW9uIGlzIGludmFsaWQiX3MgfSk7CisgICAgICAgIHJldHVybiBFeGNlcHRp
b24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbm5lY3Rpb24gaXMgaW52YWxpZCJfcyB9OwogCi0g
ICAgYXV0byogb3JpZ2luID0gY29udGV4dC0+c2VjdXJpdHlPcmlnaW4oKTsKLSAgICBpZiAoIW9y
aWdpbikKLSAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yLCAiT3JpZ2luIGlzIGludmFsaWQiX3MgfSk7CisgICAgcmV0dXJuIENvbm5lY3Rp
b25JbmZvIHsgKmNvbm5lY3Rpb24sIHsgY29udGV4dC0+dG9wT3JpZ2luKCkuZGF0YSgpLCBvcmln
aW4tPmRhdGEoKSB9IH07Cit9CiAKLSAgICByZXR1cm4gY29ubmVjdGlvbi0+cGVyc2lzdGVkKHsg
Y29udGV4dC0+dG9wT3JpZ2luKCkuZGF0YSgpLCBvcmlnaW4tPmRhdGEoKSB9LCBbcHJvbWlzZSA9
IFdURk1vdmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKK3ZvaWQgU3RvcmFn
ZU1hbmFnZXI6OnBlcnNpc3RlZChET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9vbGVhbj4mJiBwcm9t
aXNlKQoreworICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbiA9IGNvbm5lY3Rpb25J
bmZvKG1fbmF2aWdhdG9yLmdldCgpKTsKKyAgICBpZiAoY29ubmVjdGlvbkluZm9PckV4Y2VwdGlv
bi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21pc2UucmVqZWN0KGNvbm5lY3Rp
b25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsKKworICAgIGF1dG8gY29ubmVj
dGlvbkluZm8gPSBjb25uZWN0aW9uSW5mb09yRXhjZXB0aW9uLnJlbGVhc2VSZXR1cm5WYWx1ZSgp
OworICAgIGNvbm5lY3Rpb25JbmZvLmNvbm5lY3Rpb24uZ2V0UGVyc2lzdGVkKGNvbm5lY3Rpb25J
bmZvLm9yaWdpbiwgW3Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpXShib29sIHBlcnNpc3RlZCkg
bXV0YWJsZSB7CiAgICAgICAgIHByb21pc2UucmVzb2x2ZShwZXJzaXN0ZWQpOwogICAgIH0pOwog
fQogCiB2b2lkIFN0b3JhZ2VNYW5hZ2VyOjpwZXJzaXN0KERPTVByb21pc2VEZWZlcnJlZDxJRExC
b29sZWFuPiYmIHByb21pc2UpCiB7Ci0gICAgaWYgKCFtX25hdmlnYXRvcikKLSAgICAgICAgcmV0
dXJuIHByb21pc2UucmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiTmF2aWdh
dG9yIGRvZXMgbm90IGV4aXN0Il9zIH0pOworICAgIGF1dG8gY29ubmVjdGlvbkluZm9PckV4Y2Vw
dGlvbiA9IGNvbm5lY3Rpb25JbmZvKG1fbmF2aWdhdG9yLmdldCgpKTsKKyAgICBpZiAoY29ubmVj
dGlvbkluZm9PckV4Y2VwdGlvbi5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHByb21p
c2UucmVqZWN0KGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24ucmVsZWFzZUV4Y2VwdGlvbigpKTsK
IAotICAgIGF1dG8gY29udGV4dCA9IG1fbmF2aWdhdG9yLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCk7Ci0gICAgaWYgKCFjb250ZXh0KQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhj
ZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJUaGUgY29udGV4dCBpcyBpbnZhbGlkIl9zIH0p
OwotCi0gICAgYXV0byBjb25uZWN0aW9uID0gY29udGV4dC0+c3RvcmFnZUNvbm5lY3Rpb24oKTsK
LSAgICBpZiAoIWNvbm5lY3Rpb24pCi0gICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChFeGNl
cHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZSBjb25uZWN0aW9uIGlzIGludmFsaWQiX3Mg
fSk7Ci0KLSAgICBhdXRvKiBvcmlnaW4gPSBjb250ZXh0LT5zZWN1cml0eU9yaWdpbigpOwotICAg
IGlmICghb3JpZ2luKQotICAgICAgICByZXR1cm4gcHJvbWlzZS5yZWplY3QoRXhjZXB0aW9uIHsg
SW52YWxpZFN0YXRlRXJyb3IsICJPcmlnaW4gaXMgaW52YWxpZCJfcyB9KTsKLQotICAgIHJldHVy
biBjb25uZWN0aW9uLT5wZXJzaXN0KHsgY29udGV4dC0+dG9wT3JpZ2luKCkuZGF0YSgpLCBvcmln
aW4tPmRhdGEoKSB9LCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGJvb2wgcGVyc2lzdGVk
KSBtdXRhYmxlIHsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvID0gY29ubmVjdGlvbkluZm9PckV4
Y2VwdGlvbi5yZWxlYXNlUmV0dXJuVmFsdWUoKTsKKyAgICBjb25uZWN0aW9uSW5mby5jb25uZWN0
aW9uLnBlcnNpc3QoY29ubmVjdGlvbkluZm8ub3JpZ2luLCBbcHJvbWlzZSA9IFdURk1vdmUocHJv
bWlzZSldKGJvb2wgcGVyc2lzdGVkKSBtdXRhYmxlIHsKICAgICAgICAgcHJvbWlzZS5yZXNvbHZl
KHBlcnNpc3RlZCk7CiAgICAgfSk7CiB9CiAKIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0
ZW1BY2Nlc3NHZXREaXJlY3RvcnkoRE9NUHJvbWlzZURlZmVycmVkPElETEludGVyZmFjZTxGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlPj4mJiBwcm9taXNlKQogewotICAgIHJldHVybiBwcm9taXNl
LnJlamVjdChFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgIk5vdCBpbXBsZW1lbnRlZCJf
cyB9KTsKKyAgICBhdXRvIGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24gPSBjb25uZWN0aW9uSW5m
byhtX25hdmlnYXRvci5nZXQoKSk7CisgICAgaWYgKGNvbm5lY3Rpb25JbmZvT3JFeGNlcHRpb24u
aGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChjb25uZWN0aW9u
SW5mb09yRXhjZXB0aW9uLnJlbGVhc2VFeGNlcHRpb24oKSk7CisKKyAgICBhdXRvIGNvbm5lY3Rp
b25JbmZvID0gY29ubmVjdGlvbkluZm9PckV4Y2VwdGlvbi5yZWxlYXNlUmV0dXJuVmFsdWUoKTsK
KyAgICBjb25uZWN0aW9uSW5mby5jb25uZWN0aW9uLmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoY29u
bmVjdGlvbkluZm8ub3JpZ2luLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8gcmVz
dWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAg
ICAgICAgIHJldHVybiBwcm9taXNlLnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsK
KworICAgICAgICBwcm9taXNlLnJlc29sdmUoRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZTo6Y3Jl
YXRlKHsgfSwgcmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpKSk7CisgICAgfSk7CiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RvcmFnZS9TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdl
L1N0b3JhZ2VNYW5hZ2VyLmgKaW5kZXggNDVkN2I4YzE2YWRhNWY0MDU4NDg3NzgwNTg4NTc4ZmRj
N2I3ZjFhOC4uNjJiMjlmMjY0ZTcxMDBkYzNkY2Q5YzFkYzBhYzM3ZWNmMWUwNzZkZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmgKQEAgLTMx
LDkgKzMxLDEwIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZTsKIGNsYXNzIE5hdmlnYXRvckJhc2U7CiB0ZW1wbGF0ZTx0eXBlbmFtZT4g
Y2xhc3MgRE9NUHJvbWlzZURlZmVycmVkOwotY2xhc3MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZTsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRpb25PcjsKIAogY2xhc3MgU3RvcmFn
ZU1hbmFnZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlTWFuYWdlcj4gewogICAgIFdURl9N
QUtFX0lTT19BTExPQ0FURUQoU3RvcmFnZU1hbmFnZXIpOwpAQCAtNDUsNyArNDYsNiBAQCBwdWJs
aWM6CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgU3RvcmFnZU1hbmFnZXIoTmF2aWdhdG9yQmFz
ZSYpOwotCiAgICAgV2Vha1B0cjxOYXZpZ2F0b3JCYXNlPiBtX25hdmlnYXRvcjsKIH07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL1dlYkNvcmUvU291
cmNlcy50eHQKaW5kZXggZmNmMTAxZDczYzhmOGNiN2NlOWFjZmJkNzZiNGY4ODMxODU2Y2YzZS4u
NDMyMGFkYzI4OWUwOWI0YWE1YTYyYzdjOTJlMGFhMTRlMThlMmZlYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQK
QEAgLTQ4OCw2ICs0ODgsNyBAQCBiaW5kaW5ncy9qcy9KU0V4ZWNTdGF0ZS5jcHAKIGJpbmRpbmdz
L2pzL0pTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTRmV0
Y2hFdmVudEN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNw
cAorYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcAogYmluZGluZ3MvanMv
SlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5jcHAKIGJpbmRpbmdzL2pzL0pTSFRNTENhbnZhc0Vs
ZW1lbnRDdXN0b20uY3BwCiBiaW5kaW5ncy9qcy9KU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmlu
ZGV4IDU0OGJiODIyOThmZTJlNGYzZjkyMDQ5ZTNiYTVmNTUyOWEwYjFkYTYuLmMyMWYwYzc5ZjEw
ZjBkM2M3ODliNjA2ZmRlYmFhNDZkYzE4OWIzMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI4MDMsNiArMjgwMyw3IEBACiAJ
CTkzMEFBQzlBMjUwRUI4NDkwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUM5ODI1MEVCODE3MDAx
M0RBOUYgLyogQ1NTQ29uZGl0aW9uUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTkzMEFBQzlGMjUwRUQ0MDkwMDEzREE5RiAvKiBKU0NTU0Nv
bmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzMEFBQzlEMjUwRUQ0MDkwMDEzREE5RiAvKiBKU0NTU0NvbmRpdGlvblJ1bGUuaCAqLzsg
fTsKIAkJOTMwQUFDQTIyNTBFRDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3JvdXBpbmdSdWxlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUNBMDI1MEVE
NDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCAqLzsgfTsKKwkJOTMxMkJBRDkyNkYz
QUM5QTAwRkRERjVGIC8qIEZpbGVTeXN0ZW1IYW5kbGVJbXBsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzFBMDc1ODI2RjFCNDRGMDA0NDc0Q0QgLyog
RmlsZVN5c3RlbUhhbmRsZUltcGwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk5MzE1M0JEQTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdl
QDJ4LnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMxNTNCRDkxNDE4MUY3QTAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZUAyeC5wbmcgKi87IH07CiAJ
CTkzMTUzQkRDMTQxOTU5QkMwMEZDRjVCRSAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5lci5wbmcgaW4g
UmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTUzQkRCMTQx
OTU5QkIwMEZDRjVCRSAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5lci5wbmcgKi87IH07CiAJCTkzMTUz
QkUyMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzE1M0JFMTE0MTk1QTU3MDBGQ0Y1QkUg
LyogbWlzc2luZ0ltYWdlLnBuZyAqLzsgfTsKQEAgLTI4NTUsOSArMjg1Niw5IEBACiAJCTkzNDND
QjgyMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQzQ0I4MDEyRjI1RTUxMDAzM0M1RUUgLyog
VGV4dENvZGVjVVRGOC5oICovOyB9OwogCQk5MzQ0MkM5RTBEMkIzMzVDMDAzMzhGRjkgLyogSFRN
TFRhYmxlUm93c0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzNDQyQzlEMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oICovOyB9OwogCQk5MzQ0M0U4NTI2RTk5NUJCMDA1ODUzOEYgLyogU3RvcmFnZU1h
bmFnZXJGaWxlU3lzdGVtQWNjZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzQ0M0U3RDI2RThBNkJDMDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXJG
aWxlU3lzdGVtQWNjZXNzLmggKi87IH07Ci0JCTkzNDQzRTg2MjZFOTk1QkQwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJENDI2REQ2MjVBMDA1M0IzREIgLyogRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS5oICovOyB9OwotCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmls
ZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRs
ZS5oICovOyB9OwotCQk5MzQ0M0U4ODI2RTk5NUM0MDA1ODUzOEYgLyogRmlsZVN5c3RlbUhhbmRs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlC
REEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLzsgfTsKKwkJOTM0NDNF
ODYyNkU5OTVCRDAwNTg1MzhGIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkM5QkQ0MjZERDYyNUEw
MDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM0NDNFODcyNkU5OTVDMDAwNTg1MzhG
IC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJENjI2REQ2MjVDMDA1M0IzREIgLyogRmlsZVN5c3RlbUZp
bGVIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk5MzQ0M0U4ODI2RTk5NUM0MDA1ODUzOEYgLyogRmlsZVN5c3RlbUhhbmRsZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlCREEyNkRENjI2
MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzQ5MDdFNDEyNUJCQkM4MDA3RjIzQTAgLyogR3Jh
cGhpY3NDb250ZXh0Q0cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzNDkwN0UzMTI1QkJCQzgwMDdGMjNBMCAvKiBHcmFwaGljc0NvbnRleHRDRy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNDk1MENE
MjUzOTQzNjEwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTUwQjEyNTM5NDM0ODAwOTlGMTcxIC8q
IFNwZWVjaFJlY29nbml0aW9uLmggKi87IH07CiAJCTkzNDk1MENFMjUzOTQzNjUwMDk5RjE3MSAv
KiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBCQzI1Mzk0MzRFMDA5OUYxNzEgLyogU3BlZWNo
UmVjb2duaXRpb25BbHRlcm5hdGl2ZS5oICovOyB9OwpAQCAtMTE2NTUsNiArMTE2NTYsOCBAQAog
CQk5MzE2RERGODI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2ltcGxlUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTMxNkRERkEyNDBDNjRCMzAwOTM0MEFBIC8qIFNpbXBsZVJhbmdlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNpbXBsZVJhbmdlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMxNkRERkUyNDBDNjRGODAwOTM0MEFBIC8qIEJvdW5k
YXJ5UG9pbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQm91bmRhcnlQb2lu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1ODI2RjFCNDRGMDA0NDc0
Q0QgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRmlsZVN5c3RlbUhhbmRsZUltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMxQTFCREQyNkY3RUQwOTAwODFBN0U1IC8qIEpTRmlsZVN5c3RlbUhhbmRsZUN1c3RvbS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5MzFBRTNCODFGQjgwRUFFMDBGNUVGQjIgLyogSlNW
YWx1ZUluV3JhcHBlZE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZhbHVlSW5XcmFwcGVkT2Jq
ZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzMUJDQzYwMTEyNERGQ0IwMEJF
NzBERCAvKiBNZWRpYUNhblN0YXJ0TGlzdGVuZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFDYW5TdGFydExpc3RlbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTkzMUNCRDA2MTYxQTQ0RTkwMEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVOb2Rl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIzMDA4LDYgKzIzMDExLDcgQEAK
IAkJCQk0NkI2M0Y2QjFDNkU4Q0RGMDAyRTkxNEIgLyogSlNFdmVudFRhcmdldEN1c3RvbS5oICov
LAogCQkJCTQxMzFGM0IxMUY5NTUyODEwMDU5OTk1QSAvKiBKU0ZldGNoRXZlbnRDdXN0b20uY3Bw
ICovLAogCQkJCTgzNUI2ODBFMUY1NDhCREUwMDcxRjdGNiAvKiBKU0ZpbGVTeXN0ZW1FbnRyeUN1
c3RvbS5jcHAgKi8sCisJCQkJOTMxQTFCREQyNkY3RUQwOTAwODFBN0U1IC8qIEpTRmlsZVN5c3Rl
bUhhbmRsZUN1c3RvbS5jcHAgKi8sCiAJCQkJODRCQkU1NDgyNTk3RTdGMTAwQUE4RjI4IC8qIEpT
SFRNTEFsbENvbGxlY3Rpb25DdXN0b20uY3BwICovLAogCQkJCTZFNTc2QkMzMjRFQjUwOUMwMDk0
RDRBQSAvKiBKU0hUTUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcCAqLywKIAkJCQlCQ0NCQUQzQTBD
MThCRkY4MDBDRTg5MEYgLyogSlNIVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8sCkBAIC0yMzM0
MCw2ICsyMzM0NCw3IEBACiAJCQkJOTMyQzlCRDAyNkRENjI1NTAwNTNCM0RCIC8qIEZpbGVTeXN0
ZW1IYW5kbGUuY3BwICovLAogCQkJCTkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBGaWxlU3lz
dGVtSGFuZGxlLmggKi8sCiAJCQkJOTMyQzlCRDkyNkRENjI2MDAwNTNCM0RCIC8qIEZpbGVTeXN0
ZW1IYW5kbGUuaWRsICovLAorCQkJCTkzMUEwNzU4MjZGMUI0NEYwMDQ0NzRDRCAvKiBGaWxlU3lz
dGVtSGFuZGxlSW1wbC5oICovLAogCQkJCTkzNDQzRTdCMjZFOEE2QkMwMDU4NTM4RiAvKiBTdG9y
YWdlTWFuYWdlcitGaWxlU3lzdGVtQWNjZXNzLmlkbCAqLywKIAkJCQk5MzQ0M0U3RDI2RThBNkJD
MDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmggKi8sCiAJCQkpOwpA
QCAtMzI0MjUsNiArMzI0MzAsNyBAQAogCQkJCTgzRkIzMzc1MUY1MDhBNUIwMDk4NkU1NCAvKiBG
aWxlU3lzdGVtRmlsZUVudHJ5LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzQ0M0U4NzI2RTk5NUMw
MDA1ODUzOEYgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkz
NDQzRTg4MjZFOTk1QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5MzEyQkFEOTI2RjNBQzlBMDBGRERGNUYgLyogRmlsZVN5c3RlbUhhbmRsZUltcGwu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUVCNjlGMEU4MURBRUIwMEIyNTk2NSAvKiBGaWxsTGF5
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTcxMkJFNDgzMUZFODY1REQwMDIwMzFDQyAvKiBGaWxs
TW9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODQ1RTcyRjgwRkQyNjFFRTAwQTg3RDc5IC8qIEZp
bHRlci5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0ZpbGVTeXN0ZW1IYW5kbGVDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMmNkZWUxNTY3
NTYyNDIzYmE3ZTYxODVhMTBhNzY3MjdlNjU3OGRlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtSGFuZGxlQ3VzdG9tLmNwcApAQCAtMCww
ICsxLDUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpT
RmlsZVN5c3RlbUhhbmRsZS5oIgorCisjaW5jbHVkZSAiRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1GaWxlSGFuZGxlLmgiCisjaW5jbHVkZSAiSlNET01C
aW5kaW5nLmgiCisjaW5jbHVkZSAiSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmgiCisjaW5j
bHVkZSAiSlNGaWxlU3lzdGVtRmlsZUhhbmRsZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K0pTQzo6SlNWYWx1ZSB0b0pTKEpTQzo6SlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxPYmpl
Y3QsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEZpbGVTeXN0ZW1IYW5kbGUmIGhh
bmRsZSkKK3sKKyAgICByZXR1cm4gd3JhcChsZXhpY2FsR2xvYmFsT2JqZWN0LCBnbG9iYWxPYmpl
Y3QsIGhhbmRsZSk7Cit9CisKK0pTQzo6SlNWYWx1ZSB0b0pTTmV3bHlDcmVhdGVkKEpTQzo6SlNH
bG9iYWxPYmplY3QqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8RmlsZVN5
c3RlbUhhbmRsZT4mJiBoYW5kbGUpCit7CisgICAgaWYgKGlzPEZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGU+KGhhbmRsZS5nZXQoKSkpCisgICAgICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPEZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZShoYW5kbGUpKTsKKwor
ICAgIHJldHVybiBjcmVhdGVXcmFwcGVyPEZpbGVTeXN0ZW1GaWxlSGFuZGxlPihnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaGFuZGxlKSk7Cit9CisKK30KKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaAppbmRleCA5NjM5MGEwODBl
NjExNDlkYzE2Y2I4NmViOWE5MDhlYWIwZTE5NmI2Li44NDZlMjM4NTMxMDgyY2IxMmY0YzAxYmIz
MDg3NDgyYWY2OTZlZDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9X
b3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlICJNb2R1bGVTY3JpcHRMb2FkZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTY3JpcHRCdWZmZXIuaCIKICNpbmNsdWRl
ICJXb3JrZXJTY3JpcHRGZXRjaGVyLmgiCiAjaW5jbHVkZSAiV29ya2VyU2NyaXB0TG9hZGVyQ2xp
ZW50LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckpvYi5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJKb2IuaAppbmRleCA3YzU4YTQ2YzI0MjA1ODIwYWIwMTA5YzFlNTNjYzZkZWFkYmViZjg4Li5h
Nzc3NGVkYzRlZjJkOTBmZGVkMGUwNDI4ZmNhNzQ4NTRmOTVlZDRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKQEAgLTI3LDYgKzI3
LDcgQEAKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKIAorI2luY2x1ZGUgIlJlc291cmNl
TG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKICNpbmNs
dWRlICJTZXJ2aWNlV29ya2VySm9iQ2xpZW50LmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckpv
YkRhdGEuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Byb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vz
cy5jcHAKaW5kZXggN2NkNjg5MGNmYzU1MTI5YzhkZGE1NjQ4MzExZjM4Yzc4YWRmNDhhMC4uOTdi
ZGQ0ZjgyMzczNmMzYjY3YjQ1ZjMzODA2N2MwMjZlMDZjYzNlYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAKQEAgLTQ2Miw3ICs0NjIsOCBA
QCB2b2lkIE5ldHdvcmtQcm9jZXNzOjphZGRTdG9yYWdlTWFuYWdlckZvclNlc3Npb24oUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdAogCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpyZW1vdmVT
dG9yYWdlTWFuYWdlckZvclNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogewotICAg
IG1fc3RvcmFnZU1hbmFnZXJzLnJlbW92ZShzZXNzaW9uSUQpOworICAgIGlmIChhdXRvIG1hbmFn
ZXIgPSBtX3N0b3JhZ2VNYW5hZ2Vycy50YWtlKHNlc3Npb25JRCkpCisgICAgICAgIG1hbmFnZXIt
PmNsb3NlKCk7CiB9CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmZvckVhY2hOZXR3b3JrU2Vzc2lv
bihjb25zdCBGdW5jdGlvbjx2b2lkKE5ldHdvcmtTZXNzaW9uJik+JiBmdW5jdG9yKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lz
dGVtU3RvcmFnZUVycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjdhYmQ0NDEwYzA3NWYxOTMwYzlmZjUyZDg0
MWNiMDNhYjc1OTEzNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgKQEAgLTAsMCArMSw3MiBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8V2ViQ29yZS9FeGNlcHRpb25D
b2RlLmg+CisjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7
CisKK2VudW0gY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvciA6IHVpbnQ4X3QgeworICAgIEZp
bGVOb3RGb3VuZCwKKyAgICBJbnZhbGlkTmFtZSwKKyAgICBJbnZhbGlkTW9kaWZpY2F0aW9uLAor
ICAgIFR5cGVNaXNtYXRjaCwKKyAgICBVbmtub3duCit9OworCitpbmxpbmUgV2ViQ29yZTo6RXhj
ZXB0aW9uQ29kZSBjb252ZXJ0VG9FeGNlcHRpb25Db2RlKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3Ig
ZXJyb3IpCit7CisgICAgc3dpdGNoIChlcnJvcikgeworICAgIGNhc2UgRmlsZVN5c3RlbVN0b3Jh
Z2VFcnJvcjo6RmlsZU5vdEZvdW5kOgorICAgICAgICByZXR1cm4gV2ViQ29yZTo6RXhjZXB0aW9u
Q29kZTo6Tm90Rm91bmRFcnJvcjsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6Oklu
dmFsaWRNb2RpZmljYXRpb246CisgICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2Rl
OjpJbnZhbGlkTW9kaWZpY2F0aW9uRXJyb3I7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpUeXBlTWlzbWF0Y2g6CisgICAgICAgIHJldHVybiBXZWJDb3JlOjpFeGNlcHRpb25Db2Rl
OjpUeXBlRXJyb3I7CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpJbnZhbGlkTmFt
ZToKKyAgICAgICAgcmV0dXJuIFdlYkNvcmU6OkV4Y2VwdGlvbkNvZGU6OlVua25vd25FcnJvcjsK
KyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd246CisgICAgICAgIHJldHVy
biBXZWJDb3JlOjpFeGNlcHRpb25Db2RlOjpVbmtub3duRXJyb3I7CisgICAgfQorfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKKworbmFtZXNwYWNlIFdURiB7CisKK3RlbXBsYXRlPD4gc3RydWN0
IEVudW1UcmFpdHM8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiB7CisgICAgdXNpbmcg
dmFsdWVzID0gRW51bVZhbHVlczwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yLAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OkZpbGVOb3RGb3Vu
ZCwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpJbnZhbGlkTmFtZSwK
KyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpJbnZhbGlkTW9kaWZpY2F0
aW9uLAorICAgICAgICBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlR5cGVNaXNtYXRj
aCwKKyAgICAgICAgV2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duCisgICAg
PjsKK307CisKK30gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5j
cHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNTUwMTQ4YWI0YWY4NTlhM2M4ZmMyZjljMGVlZDg5NDVjYmUyNTE1Ywot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5jcHAKQEAgLTAsMCArMSwxNDIgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUu
aCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKKyNpZiBPUyhX
SU5ET1dTKQorY29uc3RleHByIGNoYXIgcGF0aFNlcGFyYXRvciA9ICdcXCc7CisjZWxzZQorY29u
c3RleHByIGNoYXIgcGF0aFNlcGFyYXRvciA9ICcvJzsKKyNlbmRpZgorCitGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyJiBtYW5hZ2VyLCBUeXBlIHR5cGUsIFN0cmluZyYmIHBhdGgsIFN0cmluZyYmIG5hbWUpCisg
ICAgOiBtX2lkZW50aWZpZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyOjpnZW5l
cmF0ZVRocmVhZFNhZmUoKSkKKyAgICAsIG1fbWFuYWdlcihtYWtlV2Vha1B0cihtYW5hZ2VyKSkK
KyAgICAsIG1fdHlwZSh0eXBlKQorICAgICwgbV9wYXRoKFdURk1vdmUocGF0aCkpCisgICAgLCBt
X25hbWUoV1RGTW92ZShuYW1lKSkKK3sKKyAgICBBU1NFUlQoIW1fcGF0aC5pc0VtcHR5KCkpOwor
CisgICAgc3dpdGNoIChtX3R5cGUpIHsKKyAgICBjYXNlIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
OjpUeXBlOjpEaXJlY3Rvcnk6CisgICAgICAgIEZpbGVTeXN0ZW06Om1ha2VBbGxEaXJlY3Rvcmll
cyhtX3BhdGgpOworICAgICAgICByZXR1cm47CisgICAgY2FzZSBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZTo6VHlwZTo6RmlsZToKKyAgICAgICAgaWYgKEZpbGVTeXN0ZW06OmZpbGVFeGlzdHMobV9w
YXRoKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgYXV0byBoYW5kbGUgPSBGaWxlU3lz
dGVtOjpvcGVuRmlsZShtX3BhdGgsIEZpbGVTeXN0ZW06OkZpbGVPcGVuTW9kZTo6V3JpdGUpOwor
ICAgICAgICBGaWxlU3lzdGVtOjpjbG9zZUZpbGUoaGFuZGxlKTsKKyAgICB9Cit9CisKK2Jvb2wg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGF1dG8gcGF0aCA9IG1fbWFuYWdlci0+
Z2V0UGF0aChpZGVudGlmaWVyKTsKKyAgICBpZiAocGF0aC5pc0VtcHR5KCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIHJldHVybiBtX3BhdGggPT0gcGF0aDsKK30KKworRXhwZWN0ZWQ8
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9y
PiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6cmVxdWVzdENyZWF0ZUhhbmRsZShJUEM6OkNvbm5l
Y3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24sIFR5cGUgdHlwZSwgU3RyaW5nJiYgbmFtZSwgYm9v
bCBjcmVhdGVJZk5lY2Vzc2FyeSkKK3sKKyAgICBpZiAobV90eXBlICE9IEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlOjpUeXBlOjpEaXJlY3RvcnkpCisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3Rl
ZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpUeXBlTWlzbWF0Y2gpOworCisgICAgaWYgKCFtX21h
bmFnZXIpCisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVy
cm9yOjpVbmtub3duKTsKKworICAgIC8vIGh0dHBzOi8vd2ljZy5naXRodWIuaW8vZmlsZS1zeXN0
ZW0tYWNjZXNzLyN2YWxpZC1maWxlLW5hbWUKKyAgICBpZiAobmFtZSA9PSAiLiIgfHwgbmFtZSA9
PSAiLi4iIHx8IG5hbWUuY29udGFpbnMocGF0aFNlcGFyYXRvcikpCisgICAgICAgIHJldHVybiBt
YWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpJbnZhbGlkTmFtZSk7CisKKyAg
ICBhdXRvIHBhdGggPSBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21wb25lbnQobV9wYXRo
LCBuYW1lKTsKKyAgICByZXR1cm4gbV9tYW5hZ2VyLT5jcmVhdGVIYW5kbGUoY29ubmVjdGlvbiwg
dHlwZSwgV1RGTW92ZShwYXRoKSwgV1RGTW92ZShuYW1lKSwgY3JlYXRlSWZOZWNlc3NhcnkpOwor
fQorCitFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3I+IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpnZXRGaWxlSGFuZGxlKElQ
Qzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQgY29ubmVjdGlvbiwgU3RyaW5nJiYgbmFtZSwgYm9vbCBj
cmVhdGVJZk5lY2Vzc2FyeSkKK3sKKyAgICByZXR1cm4gcmVxdWVzdENyZWF0ZUhhbmRsZShjb25u
ZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZTo6RmlsZSwgV1RGTW92ZShuYW1l
KSwgY3JlYXRlSWZOZWNlc3NhcnkpOworfQorCitFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlOjpnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJRCBjb25u
ZWN0aW9uLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KQoreworICAgIHJl
dHVybiByZXF1ZXN0Q3JlYXRlSGFuZGxlKGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlOjpUeXBlOjpEaXJlY3RvcnksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KTsK
K30KKworc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZTo6cmVtb3ZlRW50cnkoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJl
Y3Vyc2l2ZWx5KQoreworICAgIGlmIChtX3R5cGUgIT0gVHlwZTo6RGlyZWN0b3J5KQorICAgICAg
ICByZXR1cm4gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoOworCisgICAgYXV0
byBwYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwgbmFt
ZSk7CisgICAgYXV0byB0eXBlID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgaWYg
KCF0eXBlKQorICAgICAgICByZXR1cm4gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VHlwZU1pc21h
dGNoOworCisgICAgc3RkOjpvcHRpb25hbDxGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQ7
CisgICAgc3dpdGNoICh0eXBlLnZhbHVlKCkpIHsKKyAgICBjYXNlIEZpbGVTeXN0ZW06OkZpbGVU
eXBlOjpSZWd1bGFyOgorICAgICAgICBpZiAoIUZpbGVTeXN0ZW06OmRlbGV0ZUZpbGUocGF0aCkp
CisgICAgICAgICAgICByZXN1bHQgPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duOwor
ICAgICAgICBicmVhazsKKyAgICBjYXNlIEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpEaXJlY3Rvcnk6
CisgICAgICAgIGlmICghZGVsZXRlUmVjdXJzaXZlbHkpIHsKKyAgICAgICAgICAgIGlmICghRmls
ZVN5c3RlbTo6ZGVsZXRlRW1wdHlEaXJlY3RvcnkocGF0aCkpCisgICAgICAgICAgICAgICAgcmVz
dWx0ID0gRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bjsKKyAgICAgICAgfSBlbHNlIGlm
ICghRmlsZVN5c3RlbTo6ZGVsZXRlTm9uRW1wdHlEaXJlY3RvcnkocGF0aCkpCisgICAgICAgICAg
ICByZXN1bHQgPSBGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIEZpbGVTeXN0ZW06OkZpbGVUeXBlOjpTeW1ib2xpY0xpbms6CisgICAgICAg
IFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgfQorCisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KKworRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlOjpyZXNvbHZlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGlmICghbV9tYW5hZ2VyKQorICAgICAgICBy
ZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisK
KyAgICBhdXRvIHBhdGggPSBtX21hbmFnZXItPmdldFBhdGgoaWRlbnRpZmllcik7CisgICAgaWYg
KHBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcjo6VW5rbm93bik7CisKKyAgICBpZiAoIXBhdGguc3RhcnRzV2l0aChtX3Bh
dGgpKQorICAgICAgICByZXR1cm4gVmVjdG9yPFN0cmluZz4geyB9OworCisgICAgYXV0byByZXN0
UGF0aCA9IHBhdGguc3Vic3RyaW5nKG1fcGF0aC5sZW5ndGgoKSk7CisgICAgcmV0dXJuIHJlc3RQ
YXRoLnNwbGl0KHBhdGhTZXBhcmF0b3IpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0Zp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjIxOThkYTIxMWI4MWUyMzQyODgx
NWNhZTRhNTI4ZmY3Y2FmNTRhNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oCkBAIC0wLDAgKzEs
NjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkNvbm5lY3Rpb24u
aCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKworI2lu
Y2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBGaWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI7CitlbnVtIGNsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3Ig
OiB1aW50OF90OworCitjbGFzcyBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSA6IHB1YmxpYyBDYW5N
YWtlV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSwgV2Vha1B0ckZhY3RvcnlJbml0aWFs
aXphdGlvbjo6RWFnZXI+IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoK
KyAgICBlbnVtIGNsYXNzIFR5cGUgOiBib29sIHsgRmlsZSwgRGlyZWN0b3J5IH07CisgICAgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiwgVHlwZSwgU3Ry
aW5nJiYgcGF0aCwgU3RyaW5nJiYgbmFtZSk7CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZUlkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQor
ICAgIGNvbnN0IFN0cmluZyYgcGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fcGF0aDsgfQorCisgICAg
Ym9vbCBpc1NhbWVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAg
IEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcj4gZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBTdHJp
bmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKKyAgICBFeHBlY3RlZDxGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IGdldERp
cmVjdG9yeUhhbmRsZShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlELCBTdHJpbmcmJiBuYW1lLCBi
b29sIGNyZWF0ZUlmTmVjZXNzYXJ5KTsKKyAgICBzdGQ6Om9wdGlvbmFsPEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3I+IHJlbW92ZUVudHJ5KGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBkZWxldGVSZWN1
cnNpdmVseSk7CisgICAgRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3I+IHJlc29sdmUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKworcHJp
dmF0ZToKKyAgICBFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I+IHJlcXVlc3RDcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9u
OjpVbmlxdWVJRCwgVHlwZSwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSk7
CisKKyAgICBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwor
ICAgIFdlYWtQdHI8RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyPiBtX21hbmFnZXI7CisgICAgVHlw
ZSBtX3R5cGU7CisgICAgU3RyaW5nIG1fcGF0aDsKKyAgICBTdHJpbmcgbV9uYW1lOworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmggYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjQyNzE3ZTcxZGQ4OWFhNjQxMjYyZThjNTE0OTIzMDVl
ZGQzYTIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRl
bnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXJUeXBlIHsgfTsKK3VzaW5nIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyVHlwZT47CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlMjM5YjdjNGVlMzAyMmMw
YTdkOTU3NTZlMmZkZDU0YTA2MzQ1NTUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5j
cHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgiCisKK25hbWVzcGFjZSBX
ZWJLaXQgeworCitGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5OjpGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5KCkgPSBkZWZhdWx0OworCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlUmVnaXN0cnk6OnJlZ2lzdGVySGFuZGxlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciBpZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZSYgaGFuZGxlKQorewor
ICAgIEFTU0VSVCghbV9oYW5kbGVzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKworICAgIG1faGFu
ZGxlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQdHIoaGFuZGxlKSk7Cit9CisKK3ZvaWQgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeTo6dW5yZWdpc3RlckhhbmRsZShGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQobV9oYW5k
bGVzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKworICAgIG1faGFuZGxlcy5yZW1vdmUoaWRlbnRp
Zmllcik7Cit9CisKK0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKiBGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZVJlZ2lzdHJ5OjpnZXRIYW5kbGUoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
IGlkZW50aWZpZXIpCit7CisgICAgaWYgKGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLmdldChpZGVu
dGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIGhhbmRsZS5nZXQoKTsKKworICAgIHJldHVybiBudWxs
cHRyOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0
cnkuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjZjYzQzYzNhZmY2YzExY2VmMTNiYzNj
YzdmMGYyODgwMjMyNTA3YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvc3RvcmFnZS9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmgKQEAgLTAs
MCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQ29ubmVj
dGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllci5oIgor
I2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZTsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVS
ZWdpc3RyeSB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgRmls
ZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSgpOworICAgIHZvaWQgcmVnaXN0ZXJIYW5kbGUo
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZSYpOworICAgIHZvaWQgdW5yZWdpc3RlckhhbmRsZShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlk
ZW50aWZpZXIpOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlKiBnZXRIYW5kbGUoRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKTsKKworcHJpdmF0ZToKKyAgICBIYXNoTWFwPEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgV2Vha1B0cjxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZT4+IG1faGFuZGxlczsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0
b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9G
aWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczYjliYTEwOTFkYzQ3ODg1
MzU4OTVkNGNjZmEzYTMzNjJkYWE3YjUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcApAQCAt
MCwwICsxLDEwNyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKworI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3IuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK0ZpbGVTeXN0ZW1TdG9yYWdlTWFu
YWdlcjo6RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKFN0cmluZyYmIHBhdGgsIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQorICAgIDogbV9wYXRoKFdURk1vdmUocGF0
aCkpCisgICAgLCBtX3JlZ2lzdHJ5KHJlZ2lzdHJ5KQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6
aXNNYWluKCkpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXI6On5GaWxlU3lzdGVtU3Rv
cmFnZU1hbmFnZXIoKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAg
Zm9yIChhdXRvIGlkZW50aWZpZXIgOiBtX2hhbmRsZXMua2V5cygpKQorICAgICAgICBtX3JlZ2lz
dHJ5LnVucmVnaXN0ZXJIYW5kbGUoaWRlbnRpZmllcik7Cit9CisKK0V4cGVjdGVkPEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gRmlsZVN5
c3RlbVN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVIYW5kbGUoSVBDOjpDb25uZWN0aW9uOjpVbmlxdWVJ
RCBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZTo6VHlwZSB0eXBlLCBTdHJpbmcm
JiBwYXRoLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KQoreworICAgIEFT
U0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAg
ICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcjo6VW5rbm93
bik7CisKKyAgICBhdXRvIGZpbGVFeGlzdHMgPSBGaWxlU3lzdGVtOjpmaWxlRXhpc3RzKHBhdGgp
OworICAgIGlmICghY3JlYXRlSWZOZWNlc3NhcnkgJiYgIWZpbGVFeGlzdHMpCisgICAgICAgIHJl
dHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpGaWxlTm90Rm91bmQp
OworCisgICAgaWYgKGZpbGVFeGlzdHMpIHsKKyAgICAgICAgYXV0byBleGlzdGluZ0ZpbGVUeXBl
ID0gRmlsZVN5c3RlbTo6ZmlsZVR5cGUocGF0aCk7CisgICAgICAgIGlmICghZXhpc3RpbmdGaWxl
VHlwZSkKKyAgICAgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFn
ZUVycm9yOjpVbmtub3duKTsKKworICAgICAgICBhdXRvIGV4aXN0aW5nSGFuZGxlVHlwZSA9IChl
eGlzdGluZ0ZpbGVUeXBlLnZhbHVlKCkgPT0gRmlsZVN5c3RlbTo6RmlsZVR5cGU6OlJlZ3VsYXIp
ID8gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkZpbGUgOiBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZTo6VHlwZTo6RGlyZWN0b3J5OworICAgICAgICBpZiAoZXhpc3RpbmdIYW5kbGVUeXBl
ICE9IHR5cGUpCisgICAgICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoRmlsZVN5c3RlbVN0
b3JhZ2VFcnJvcjo6VHlwZU1pc21hdGNoKTsKKyAgICB9CisKKyAgICBhdXRvIG5ld0hhbmRsZSA9
IG1ha2VVbmlxdWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU+KCp0aGlzLCB0eXBlLCBXVEZNb3Zl
KHBhdGgpLCBXVEZNb3ZlKG5hbWUpKTsKKyAgICBhdXRvIG5ld0hhbmRsZUlkZW50aWZpZXIgPSBu
ZXdIYW5kbGUtPmlkZW50aWZpZXIoKTsKKyAgICBtX2hhbmRsZXNCeUNvbm5lY3Rpb24uZW5zdXJl
KGNvbm5lY3Rpb24sIFsmXSB7CisgICAgICAgIHJldHVybiBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlSWRlbnRpZmllcj4geyB9OworICAgIH0pLml0ZXJhdG9yLT52YWx1ZS5hZGQobmV3
SGFuZGxlSWRlbnRpZmllcik7CisgICAgbV9yZWdpc3RyeS5yZWdpc3RlckhhbmRsZShuZXdIYW5k
bGVJZGVudGlmaWVyLCAqbmV3SGFuZGxlKTsKKyAgICBtX2hhbmRsZXMuYWRkKG5ld0hhbmRsZUlk
ZW50aWZpZXIsIFdURk1vdmUobmV3SGFuZGxlKSk7CisgICAgcmV0dXJuIG5ld0hhbmRsZUlkZW50
aWZpZXI7Cit9CisKK2NvbnN0IFN0cmluZyYgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOjpnZXRQ
YXRoKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAg
IGF1dG8gaGFuZGxlID0gbV9oYW5kbGVzLmZpbmQoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIGhh
bmRsZSA9PSBtX2hhbmRsZXMuZW5kKCkgPyBlbXB0eVN0cmluZygpIDogaGFuZGxlLT52YWx1ZS0+
cGF0aCgpOworfQorCit2b2lkIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcjo6Y29ubmVjdGlvbkNs
b3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEIGNvbm5lY3Rpb24pCit7CisgICAgQVNTRVJU
KCFSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBhdXRvIGhhbmRsZXMgPSBtX2hhbmRsZXNCeUNv
bm5lY3Rpb24uZmluZChjb25uZWN0aW9uKTsKKyAgICBpZiAoaGFuZGxlcyA9PSBtX2hhbmRsZXNC
eUNvbm5lY3Rpb24uZW5kKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byBoYW5k
bGVJZGVudGlmaWVyIDogaGFuZGxlcy0+dmFsdWUpIHsKKyAgICAgICAgYXV0byBoYW5kbGUgPSBt
X2hhbmRsZXMudGFrZShoYW5kbGVJZGVudGlmaWVyKTsKKyAgICAgICAgbV9yZWdpc3RyeS51bnJl
Z2lzdGVySGFuZGxlKGhhbmRsZUlkZW50aWZpZXIpOworICAgIH0KKyAgICBtX2hhbmRsZXNCeUNv
bm5lY3Rpb24ucmVtb3ZlKGhhbmRsZXMpOworfQorCitFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+IEZpbGVTeXN0ZW1TdG9y
YWdlTWFuYWdlcjo6Z2V0RGlyZWN0b3J5KElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQgY29ubmVj
dGlvbikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIHJldHVybiBj
cmVhdGVIYW5kbGUoY29ubmVjdGlvbiwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGU6OkRp
cmVjdG9yeSwgU3RyaW5nIHsgbV9wYXRoIH0sIHsgfSwgdHJ1ZSk7Cit9CisKK30gLy8gbmFtZXNw
YWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9y
YWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3ZTNl
ODkxNGU1YzA0YTNlMTMwYzJjYmE5NWM5NzQwZDQ2Y2UyNGIKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlOworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdp
c3RyeTsKKworY2xhc3MgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyIDogcHVibGljIENhbk1ha2VX
ZWFrUHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4geworICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOworcHVibGljOgorICAgIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcihTdHJpbmcmJiBw
YXRoLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5Jik7CisgICAgfkZpbGVTeXN0ZW1T
dG9yYWdlTWFuYWdlcigpOworCisgICAgRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiBjcmVhdGVIYW5kbGUoSVBDOjpDb25u
ZWN0aW9uOjpVbmlxdWVJRCwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGU6OlR5cGUsIFN0cmluZyYm
IHBhdGgsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnkpOworICAgIGNvbnN0
IFN0cmluZyYgZ2V0UGF0aChGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIpOworICAg
IHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEKTsKKyAgICBF
eHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3I+IGdldERpcmVjdG9yeShJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEKTsKKworcHJp
dmF0ZToKKyAgICBTdHJpbmcgbV9wYXRoOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVn
aXN0cnkmIG1fcmVnaXN0cnk7CisgICAgSGFzaE1hcDxJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlE
LCBIYXNoU2V0PEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllcj4+IG1faGFuZGxlc0J5
Q29ubmVjdGlvbjsKKyAgICBIYXNoTWFwPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciwgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlPj4gbV9oYW5kbGVzOwor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCmlu
ZGV4IDM4NjI4MTc0MjViZDJiYmEwODlmMDg0N2IzM2I1ZGE3YWIwNmU2ZGQuLjI3YWIyM2U4ZTQ0
ZTk2NjA3NjhiZGM3N2IyZTZmNjljMGQ3YzQxMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIu
Y3BwCkBAIC0yNiw2ICsyNiw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTmV0
d29ya1N0b3JhZ2VNYW5hZ2VyLmgiCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVJlZ2lzdHJ5LmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmgiCiAjaW5j
bHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJPcmlnaW5T
dG9yYWdlTWFuYWdlci5oIgogI2luY2x1ZGUgPHBhbC9jcnlwdG8vQ3J5cHRvRGlnZXN0Lmg+CkBA
IC00NSw2ICs0Nyw3IEBAIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6TmV0d29ya1N0b3JhZ2VNYW5h
Z2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyCiAgICAgQVNTRVJUKFJ1bkxv
b3A6OmlzTWFpbigpKTsKIAogICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRU
aGlzID0gUmVmIHsgKnRoaXMgfSwgcGF0aCA9IHBhdGguaXNvbGF0ZWRDb3B5KCldKCkgbXV0YWJs
ZSB7CisgICAgICAgIG1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSA9IG1ha2VVbmlx
dWU8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeT4oKTsKICAgICAgICAgbV9wYXRoID0g
cGF0aDsKICAgICAgICAgaWYgKCFtX3BhdGguaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBhdXRv
IHNhbHRQYXRoID0gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KG1fcGF0aCwg
InNhbHQiKTsKQEAgLTUzLDE4ICs1Niw1NCBAQCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6Ok5ldHdv
cmtTdG9yYWdlTWFuYWdlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cgogICAg
IH0pOwogfQogCitOZXR3b3JrU3RvcmFnZU1hbmFnZXI6On5OZXR3b3JrU3RvcmFnZU1hbmFnZXIo
KQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKG1fY2xvc2Vk
KTsKK30KKwordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNsb3NlKCkKK3sKKyAgICBBU1NF
UlQoUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgaWYgKG1fY2xvc2VkKQorICAgICAgICByZXR1
cm47CisgICAgbV9jbG9zZWQgPSB0cnVlOworCisgICAgZm9yIChhdXRvJiBjb25uZWN0aW9uIDog
bV9jb25uZWN0aW9ucykKKyAgICAgICAgY29ubmVjdGlvbi5yZW1vdmVXb3JrUXVldWVNZXNzYWdl
UmVjZWl2ZXIoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVy
TmFtZSgpKTsKKworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0g
UmVmIHsgKnRoaXMgfV0oKSBtdXRhYmxlIHsKKyAgICAgICAgbV9sb2NhbE9yaWdpblN0b3JhZ2VN
YW5hZ2Vycy5jbGVhcigpOworICAgICAgICBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnMu
Y2xlYXIoKTsKKyAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5ID0gbnVs
bHB0cjsKKworICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RlZFRoaXMg
PSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpXSB7IH0pOworICAgIH0pOworfQorCiB2b2lkIE5ldHdv
cmtTdG9yYWdlTWFuYWdlcjo6c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oSVBD
OjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4o
KSk7CiAKICAgICBjb25uZWN0aW9uLmFkZFdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdl
czo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcXVldWUu
Z2V0KCksIHRoaXMpOworICAgIG1fY29ubmVjdGlvbnMuYWRkKGNvbm5lY3Rpb24pOwogfQogCiB2
b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6c3RvcFJlY2VpdmluZ01lc3NhZ2VGcm9tQ29ubmVj
dGlvbihJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6
OmlzTWFpbigpKTsKKyAgICAKKyAgICBpZiAoIW1fY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rp
b24pKQorICAgICAgICByZXR1cm47CiAKICAgICBjb25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1l
c3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjptZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkpOworICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gUmVmIHsgKnRoaXMgfSwgY29ubmVjdGlvbiA9IGNvbm5lY3Rpb24udW5pcXVlSUQoKV0oKSBt
dXRhYmxlIHsKKyAgICAgICAgZm9yIChhdXRvJiBvcmlnaW5TdG9yYWdlTWFuYWdlciA6IG1fbG9j
YWxPcmlnaW5TdG9yYWdlTWFuYWdlcnMudmFsdWVzKCkpCisgICAgICAgICAgICBvcmlnaW5TdG9y
YWdlTWFuYWdlci0+Y29ubmVjdGlvbkNsb3NlZChjb25uZWN0aW9uKTsKKworICAgICAgICBSdW5M
b29wOjptYWluKCkuZGlzcGF0Y2goW3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRo
aXMpXSB7IH0pOworICAgIH0pOwogfQogCiBzdGF0aWMgU3RyaW5nIGVuY29kZShjb25zdCBTdHJp
bmcmIHN0cmluZywgRmlsZVN5c3RlbTo6U2FsdCBzYWx0KQpAQCAtMTE0LDEzICsxNTMsNzggQEAg
dm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OnBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50
T3JpZ2luJiBvcmlnaW4sIENvbXBsZXQKIHZvaWQgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpjbGVh
clN0b3JhZ2VGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKIHsKICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworCiAgICAgbV9xdWV1
ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBSZWYgeyAqdGhpcyB9LCBjb21wbGV0
aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSgpIG11dGFibGUgewogICAg
ICAgICBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzLmNsZWFyKCk7CiAgICAgICAgIG1fc2Vz
c2lvbk9yaWdpblN0b3JhZ2VNYW5hZ2Vycy5jbGVhcigpOwogCi0gICAgICAgIFJ1bkxvb3A6Om1h
aW4oKS5kaXNwYXRjaChXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIFJ1bkxv
b3A6Om1haW4oKS5kaXNwYXRjaChbcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhp
cyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKCkgbXV0
YWJsZSB7CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgICAgICB9KTsKICAg
ICB9KTsKIH0KIAordm9pZCBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmZpbGVTeXN0ZW1HZXREaXJl
Y3RvcnkoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBXZWJDb3JlOjpDbGllbnRP
cmlnaW4mIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAg
IGNvbXBsZXRpb25IYW5kbGVyKGxvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXIob3JpZ2luKS5maWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXIoKm1fZmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSku
Z2V0RGlyZWN0b3J5KGNvbm5lY3Rpb24udW5pcXVlSUQoKSkpOworfQorCit2b2lkIE5ldHdvcmtT
dG9yYWdlTWFuYWdlcjo6aXNTYW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlm
aWVyIGlkZW50aWZpZXIsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJ
ZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBoYW5k
bGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVudGlm
aWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKGhhbmRsZS0+aXNTYW1lRW50cnkodGFy
Z2V0SWRlbnRpZmllcikpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6Z2V0Rmls
ZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcmJiBuYW1lLCBib29sIGNyZWF0ZUlmTmVj
ZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBo
YW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdldEhhbmRsZShpZGVu
dGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKG1ha2VVbmV4cGVjdGVkKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pKTsKKwor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKGhhbmRsZS0+Z2V0RmlsZUhhbmRsZShjb25uZWN0aW9uLnVu
aXF1ZUlEKCksIFdURk1vdmUobmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KSk7Cit9CisKK3ZvaWQg
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpnZXREaXJlY3RvcnlIYW5kbGUoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW9uLCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmll
ciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIEZpbGVT
eXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQo
IVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5kbGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5k
bGUpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxl
U3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3duKSk7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlciho
YW5kbGUtPmdldERpcmVjdG9yeUhhbmRsZShjb25uZWN0aW9uLnVuaXF1ZUlEKCksIFdURk1vdmUo
bmFtZSksIGNyZWF0ZUlmTmVjZXNzYXJ5KSk7Cit9CisKK3ZvaWQgTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyOjpyZW1vdmVFbnRyeShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGRlbGV0ZVJlY3Vyc2l2ZWx5LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4pPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOwor
CisgICAgYXV0byBoYW5kbGUgPSBtX2ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnktPmdl
dEhhbmRsZShpZGVudGlmaWVyKTsKKyAgICBpZiAoIWhhbmRsZSkKKyAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I6OlVua25vd24pOworCisgICAg
Y29tcGxldGlvbkhhbmRsZXIoaGFuZGxlLT5yZW1vdmVFbnRyeShuYW1lLCBkZWxldGVSZWN1cnNp
dmVseSkpOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6cmVzb2x2ZShGaWxlU3lz
dGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VI
YW5kbGVJZGVudGlmaWVyIHRhcmdldElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
RXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAg
IGF1dG8gaGFuZGxlID0gbV9maWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LT5nZXRIYW5k
bGUoaWRlbnRpZmllcik7CisgICAgaWYgKCFoYW5kbGUpCisgICAgICAgIHJldHVybiBjb21wbGV0
aW9uSGFuZGxlcihtYWtlVW5leHBlY3RlZChGaWxlU3lzdGVtU3RvcmFnZUVycm9yOjpVbmtub3du
KSk7CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGUtPnJlc29sdmUodGFyZ2V0SWRlbnRp
ZmllcikpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5oIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdl
ci5oCmluZGV4IGY2ZGFlZDEzZjI2NzUzNzdjMjI4ZTE3YjYyZWRmYzBiYmNhZTA4OTAuLjAyYjJm
MzU3N2ZiMTJmZDgxNjE1YTlmMGY1NzMzZDk1ODNmZjZjYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5h
Z2VyLmgKQEAgLTI2LDYgKzI2LDggQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVj
dGlvbi5oIgorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlRXJyb3IuaCIKKyNpbmNsdWRlICJG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJPcmlnaW5TdG9y
YWdlTWFuYWdlci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvQ2xpZW50T3JpZ2luLmg+CiAjaW5jbHVk
ZSA8cGFsL1Nlc3Npb25JRC5oPgpAQCAtMzYsNyArMzgsOSBAQCBzdHJ1Y3QgQ2xpZW50T3JpZ2lu
OwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotY2xhc3MgTmV0d29ya1N0b3JhZ2VNYW5hZ2VyIDog
cHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2NsYXNz
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CisKK2NsYXNzIE5ldHdvcmtTdG9yYWdl
TWFuYWdlciBmaW5hbCA6IHB1YmxpYyBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3NhZ2VS
ZWNlaXZlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxOZXR3b3JrU3RvcmFnZU1hbmFnZXI+
IGNyZWF0ZShQQUw6OlNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBwYXRoKTsKIApAQCAtNDQsMjUg
KzQ4LDM3IEBAIHB1YmxpYzoKICAgICB2b2lkIHN0b3BSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5l
Y3Rpb24oSVBDOjpDb25uZWN0aW9uJik7CiAKICAgICBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQo
KSBjb25zdCB7IHJldHVybiBtX3Nlc3Npb25JRDsgfQorICAgIHZvaWQgY2xvc2UoKTsKICAgICB2
b2lkIGNsZWFyU3RvcmFnZUZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsK
IAogcHJpdmF0ZToKICAgICBOZXR3b3JrU3RvcmFnZU1hbmFnZXIoUEFMOjpTZXNzaW9uSUQsIGNv
bnN0IFN0cmluZyYgcGF0aCk7CisgICAgfk5ldHdvcmtTdG9yYWdlTWFuYWdlcigpOwogICAgIE9y
aWdpblN0b3JhZ2VNYW5hZ2VyJiBsb2NhbE9yaWdpblN0b3JhZ2VNYW5hZ2VyKGNvbnN0IFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYpOworICAgIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkm
IGZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkoKTsKIAogICAgIC8vIElQQzo6TWVzc2Fn
ZVJlY2VpdmVyIChpbXBsZW1lbnRlZCBieSBnZW5lcmF0ZWQgY29kZSkKICAgICB2b2lkIGRpZFJl
Y2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpOwogCi0gICAgLy8g
TWVzc2FnZSBIYW5kbGVycworICAgIC8vIE1lc3NhZ2UgaGFuZGxlcnMKICAgICB2b2lkIHBlcnNp
c3RlZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmKTsKICAgICB2b2lkIHBlcnNpc3QoY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2lu
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBmaWxlU3lzdGVt
R2V0RGlyZWN0b3J5KElQQzo6Q29ubmVjdGlvbiYsIGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5k
bGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgaXNT
YW1lRW50cnkoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwor
ICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShJUEM6OkNvbm5lY3Rpb24mLCBGaWxlU3lzdGVtU3RvcmFn
ZUhhbmRsZUlkZW50aWZpZXIsIFN0cmluZyYmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3Nhcnks
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyLCBGaWxlU3lzdGVtU3RvcmFnZUVycm9yPik+JiYpOworICAgIHZvaWQgZ2V0RGly
ZWN0b3J5SGFuZGxlKElQQzo6Q29ubmVjdGlvbiYsIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRl
bnRpZmllciwgU3RyaW5nJiYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChFeHBlY3RlZDxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIs
IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CisgICAgdm9pZCByZW1vdmVFbnRyeShGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbmFtZSwgYm9vbCBk
ZWxldGVSZWN1cnNpdmVseSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZp
bGVTeXN0ZW1TdG9yYWdlRXJyb3I+KT4mJik7CisgICAgdm9pZCByZXNvbHZlKEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlSWRlbnRpZmllciwgRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFZlY3RvcjxTdHJpbmc+LCBGaWxlU3lz
dGVtU3RvcmFnZUVycm9yPik+JiYpOwogCiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7
CiAgICAgUmVmPFdvcmtRdWV1ZT4gbV9xdWV1ZTsKICAgICBTdHJpbmcgbV9wYXRoOwogICAgIEZp
bGVTeXN0ZW06OlNhbHQgbV9zYWx0OworICAgIGJvb2wgbV9jbG9zZWQgeyBmYWxzZSB9OwogICAg
IEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2luU3Rv
cmFnZU1hbmFnZXI+PiBtX2xvY2FsT3JpZ2luU3RvcmFnZU1hbmFnZXJzOwogICAgIEhhc2hNYXA8
V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBzdGQ6OnVuaXF1ZV9wdHI8T3JpZ2luU3RvcmFnZU1hbmFn
ZXI+PiBtX3Nlc3Npb25PcmlnaW5TdG9yYWdlTWFuYWdlcnM7CisgICAgV2Vha0hhc2hTZXQ8SVBD
OjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb25zOyAvLyBNYWluIHRocmVhZCBvbmx5LgorICAgIHN0
ZDo6dW5pcXVlX3B0cjxGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5PiBtX2ZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9OZXR3b3JrU3Rv
cmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0
b3JhZ2UvTmV0d29ya1N0b3JhZ2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGZlYzI3MWUwZThk
ZTg5OGZmMzk5MjZjYjg2NDBlYTEwZjE3OTk1NTAuLmM2YjY5Nzk1ODk3M2Y2YTBjOGVhZDZlZjNm
OTk0YTE0MWUzYmZiYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9OZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9yYWdlTWFuYWdlci5tZXNzYWdl
cy5pbgpAQCAtMjYsNCArMjYsMTAgQEAKICBtZXNzYWdlcyAtPiBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXIgewogICAgIFBlcnNpc3RlZChzdHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikg
LT4gKGJvb2wgcGVyc2lzdGVkKSBBc3luYwogICAgIFBlcnNpc3Qoc3RydWN0IFdlYkNvcmU6OkNs
aWVudE9yaWdpbiBvcmlnaW4pIC0+IChib29sIHBlcnNpc3RlZCkgQXN5bmMKKyAgICBGaWxlU3lz
dGVtR2V0RGlyZWN0b3J5KHN0cnVjdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4gb3JpZ2luKSAtPiAo
RXhwZWN0ZWQ8V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdlYktp
dDo6RmlsZVN5c3RlbVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24K
KyAgICBJc1NhbWVFbnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmll
ciBpZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0
YXJnZXRJZGVudGlmaWVyKSAtPiAoYm9vbCByZXN1bHQpIEFzeW5jCisgICAgR2V0RmlsZUhhbmRs
ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBT
dHJpbmcgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSkgLT4gKEV4cGVjdGVkPFdlYktpdDo6
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLCBXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9y
YWdlRXJyb3I+IHJlc3VsdCkgQXN5bmMgV2FudHNDb25uZWN0aW9uCisgICAgR2V0RGlyZWN0b3J5
SGFuZGxlKFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIFN0cmluZyBuYW1lLCBib29sIGNyZWF0ZUlmTmVjZXNzYXJ5KSAtPiAoRXhwZWN0ZWQ8V2Vi
S2l0OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIsIFdlYktpdDo6RmlsZVN5c3Rl
bVN0b3JhZ2VFcnJvcj4gcmVzdWx0KSBBc3luYyBXYW50c0Nvbm5lY3Rpb24KKyAgICBSZW1vdmVF
bnRyeShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVy
LCBTdHJpbmcgbmFtZSwgYm9vbCBkZWxldGVSZWN1cnNpdmVseSkgLT4gKHN0ZDo6b3B0aW9uYWw8
V2ViS2l0OjpGaWxlU3lzdGVtU3RvcmFnZUVycm9yPiByZXN1bHQpIEFzeW5jCisgICAgUmVzb2x2
ZShXZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciBpZGVudGlmaWVyLCBX
ZWJLaXQ6OkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciB0YXJnZXRJZGVudGlmaWVy
KSAtPiAoRXhwZWN0ZWQ8VmVjdG9yPFN0cmluZz4sIFdlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VF
cnJvcj4gcmVzdWx0KSBBc3luYwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5jcHAKaW5kZXggNzVh
MWFlZDI0OWY5Mjg1OTkwZjY2Y2E5NjgxNzM3ODhlZjQ3ZDA1NC4uNGYwNmY0NTI0NjU2NDZkMjAx
MWJjN2Y1M2JiZGIyODExNTkzYWE0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9zdG9yYWdlL09yaWdpblN0b3JhZ2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuY3BwCkBAIC0y
Niw2ICsyNiw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiT3JpZ2luU3RvcmFn
ZU1hbmFnZXIuaCIKIAorI2luY2x1ZGUgIkZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuaCIKKwogbmFtZXNwYWNlIFdl
YktpdCB7CiAKIGVudW0gY2xhc3MgT3JpZ2luU3RvcmFnZU1hbmFnZXI6OlN0b3JhZ2VCdWNrZXRN
b2RlIDogYm9vbCB7IEJlc3RFZmZvcnQsIFBlcnNpc3RlbnQgfTsKQEAgLTM4LDEyICs0MSwzNCBA
QCBwdWJsaWM6CiAgICAgICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAgICAgewogICAg
IH0KKwogICAgIFN0b3JhZ2VCdWNrZXRNb2RlIG1vZGUoKSBjb25zdCB7IHJldHVybiBtX21vZGU7
IH0KICAgICB2b2lkIHNldE1vZGUoU3RvcmFnZUJ1Y2tldE1vZGUgbW9kZSkgeyBtX21vZGUgPSBt
b2RlOyB9CisKKyAgICB2b2lkIGNvbm5lY3Rpb25DbG9zZWQoSVBDOjpDb25uZWN0aW9uOjpVbmlx
dWVJRCBjb25uZWN0aW9uKQorICAgIHsKKyAgICAgICAgaWYgKG1fZmlsZVN5c3RlbVN0b3JhZ2VN
YW5hZ2VyKQorICAgICAgICAgICAgbV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXItPmNvbm5lY3Rp
b25DbG9zZWQoY29ubmVjdGlvbik7CisgICAgfQorCisgICAgU3RyaW5nIHR5cGVTdG9yYWdlUGF0
aChjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZGVudGlmaWVyKSBjb25zdAorICAgIHsKKyAgICAgICAg
cmV0dXJuIG1fcm9vdFBhdGguaXNFbXB0eSgpID8gZW1wdHlTdHJpbmcoKSA6IEZpbGVTeXN0ZW06
OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChtX3Jvb3RQYXRoLCBzdG9yYWdlSWRlbnRpZmllcik7
CisgICAgfQorCisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVtU3RvcmFn
ZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYgcmVnaXN0cnkpCisgICAg
eworICAgICAgICBpZiAoIW1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKQorICAgICAgICAgICAg
bV9maWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIgPSBtYWtlVW5pcXVlPEZpbGVTeXN0ZW1TdG9yYWdl
TWFuYWdlcj4odHlwZVN0b3JhZ2VQYXRoKCJGaWxlU3lzdGVtIiksIHJlZ2lzdHJ5KTsKKworICAg
ICAgICByZXR1cm4gKm1fZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyOworICAgIH0KKwogcHJpdmF0
ZToKICAgICBTdHJpbmcgbV9yb290UGF0aDsKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwogICAg
IFN0b3JhZ2VCdWNrZXRNb2RlIG1fbW9kZSB7IFN0b3JhZ2VCdWNrZXRNb2RlOjpCZXN0RWZmb3J0
IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlcj4gbV9maWxl
U3lzdGVtU3RvcmFnZU1hbmFnZXI7CiB9OwogCiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6T3JpZ2lu
U3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKQEAgLTUzLDE0ICs3OCwyOSBAQCBPcmlnaW5T
dG9yYWdlTWFuYWdlcjo6T3JpZ2luU3RvcmFnZU1hbmFnZXIoU3RyaW5nJiYgcGF0aCkKIAogT3Jp
Z2luU3RvcmFnZU1hbmFnZXI6On5PcmlnaW5TdG9yYWdlTWFuYWdlcigpID0gZGVmYXVsdDsKIAot
dm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit2b2lkIE9yaWdpblN0b3JhZ2VN
YW5hZ2VyOjpjb25uZWN0aW9uQ2xvc2VkKElQQzo6Q29ubmVjdGlvbjo6VW5pcXVlSUQgY29ubmVj
dGlvbikKK3sKKyAgICBpZiAobV9kZWZhdWx0QnVja2V0KQorICAgICAgICBtX2RlZmF1bHRCdWNr
ZXQtPmNvbm5lY3Rpb25DbG9zZWQoY29ubmVjdGlvbik7Cit9CisKK09yaWdpblN0b3JhZ2VNYW5h
Z2VyOjpTdG9yYWdlQnVja2V0JiBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6ZGVmYXVsdEJ1Y2tldCgp
CiB7Ci0gICAgbV9wZXJzaXN0ZWQgPSB0cnVlOwotICAgIAogICAgIGlmICghbV9kZWZhdWx0QnVj
a2V0KQogICAgICAgICBtX2RlZmF1bHRCdWNrZXQgPSBtYWtlVW5pcXVlPFN0b3JhZ2VCdWNrZXQ+
KG1fcGF0aCwgImRlZmF1bHQiX3MpOwogCi0gICAgbV9kZWZhdWx0QnVja2V0LT5zZXRNb2RlKFN0
b3JhZ2VCdWNrZXRNb2RlOjpQZXJzaXN0ZW50KTsKKyAgICByZXR1cm4gKm1fZGVmYXVsdEJ1Y2tl
dDsKK30KKwordm9pZCBPcmlnaW5TdG9yYWdlTWFuYWdlcjo6cGVyc2lzdCgpCit7CisgICAgbV9w
ZXJzaXN0ZWQgPSB0cnVlOworICAgIGRlZmF1bHRCdWNrZXQoKS5zZXRNb2RlKFN0b3JhZ2VCdWNr
ZXRNb2RlOjpQZXJzaXN0ZW50KTsKK30KKworRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBPcmln
aW5TdG9yYWdlTWFuYWdlcjo6ZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKEZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkmIHJlZ2lzdHJ5KQoreworICAgIHJldHVybiBkZWZhdWx0QnVja2V0
KCkuZmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyKHJlZ2lzdHJ5KTsKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3N0b3Jh
Z2UvT3JpZ2luU3RvcmFnZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCmluZGV4IDllNDIxNWIzYzcwMGJkNDk5ZDA2
ZTNiOTA0YzE0ZWZkNjUyODlmMzAuLjdkMTE2NTVhN2Q0ZDkyMGVkZDBhOWYzZmZhZjMyZjkyMGQx
MzZiODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc3RvcmFnZS9P
cmlnaW5TdG9yYWdlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
c3RvcmFnZS9PcmlnaW5TdG9yYWdlTWFuYWdlci5oCkBAIC0yNSwyMiArMjUsMjkgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIu
aCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKK2NsYXNzIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnk7CitjbGFzcyBGaWxlU3lz
dGVtU3RvcmFnZU1hbmFnZXI7CisKIGNsYXNzIE9yaWdpblN0b3JhZ2VNYW5hZ2VyIHsKICAgICBX
VEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBPcmlnaW5TdG9y
YWdlTWFuYWdlcihTdHJpbmcmJiBwYXRoKTsKICAgICB+T3JpZ2luU3RvcmFnZU1hbmFnZXIoKTsK
IAorICAgIHZvaWQgY29ubmVjdGlvbkNsb3NlZChJUEM6OkNvbm5lY3Rpb246OlVuaXF1ZUlEKTsK
ICAgICBib29sIHBlcnNpc3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyc2lzdGVkOyB9CiAgICAg
dm9pZCBwZXJzaXN0KCk7CisgICAgRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyJiBmaWxlU3lzdGVt
U3RvcmFnZU1hbmFnZXIoRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeSYpOwogCiBwcml2
YXRlOgogICAgIGVudW0gY2xhc3MgU3RvcmFnZUJ1Y2tldE1vZGUgOiBib29sOwogICAgIGNsYXNz
IFN0b3JhZ2VCdWNrZXQ7CisgICAgU3RvcmFnZUJ1Y2tldCYgZGVmYXVsdEJ1Y2tldCgpOwogCiAg
ICAgc3RkOjp1bmlxdWVfcHRyPFN0b3JhZ2VCdWNrZXQ+IG1fZGVmYXVsdEJ1Y2tldDsKICAgICBT
dHJpbmcgbV9wYXRoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9t
ZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5k
ZXggZTMwMTc3ZTJmZDQ4Nzg3ZTI4YmY2ZTgzNDJlNWU2ZWQ1NzI0N2QyNC4uMzM0YjgxYzZkNWRj
ODUxMzk2ZTIxNDk4MDkzMmYyYzY4OTIyOTAwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
Y3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Vi
a2l0L21lc3NhZ2VzLnB5CkBAIC0zMTYsNiArMzE2LDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90
X2JlX2ZvcndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYktpdDo6Q29udGVudFdvcmxkSWRl
bnRpZmllcicsCiAgICAgICAgICdXZWJLaXQ6OkRpc3BsYXlMaW5rT2JzZXJ2ZXJJRCcsCiAgICAg
ICAgICdXZWJLaXQ6OkRvd25sb2FkSUQnLAorICAgICAgICAnV2ViS2l0OjpGaWxlU3lzdGVtU3Rv
cmFnZUVycm9yJywKKyAgICAgICAgJ1dlYktpdDo6RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6Rm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmllcics
CiAgICAgICAgICdXZWJLaXQ6Okdlb2xvY2F0aW9uSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJL
aXQ6OkdyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NvdXJjZXMudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dAppbmRleCA5M2RiYTZj
ZDk2MGIwODkxYjJiZGY0OWZlNWZlMDA1NzU4NGJhNDYyLi5kOWUyZThmZmVlYzZjOGI5NWNmZDEz
OWEwZjBmYWYwYzk1NGUzZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0
CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKQEAgLTExNSw2ICsxMTUsOSBAQCBOZXR3
b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXT3JpZ2luU3RvcmUuY3BwIEBuby11bmlmeQog
TmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIEBu
by11bmlmeQogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4
dENvbm5lY3Rpb24uY3BwIEBuby11bmlmeQogCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVT
eXN0ZW1TdG9yYWdlTWFuYWdlci5jcHAKK05ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGUuY3BwCitOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL0ZpbGVTeXN0ZW1TdG9y
YWdlSGFuZGxlUmVnaXN0cnkuY3BwCiBOZXR3b3JrUHJvY2Vzcy9zdG9yYWdlL05ldHdvcmtTdG9y
YWdlTWFuYWdlci5jcHAKIE5ldHdvcmtQcm9jZXNzL3N0b3JhZ2UvT3JpZ2luU3RvcmFnZU1hbmFn
ZXIuY3BwCiAKQEAgLTY5Miw2ICs2OTUsNyBAQCBXZWJQcm9jZXNzL1VzZXJDb250ZW50L1dlYlVz
ZXJDb250ZW50Q29udHJvbGxlci5jcHAKIFdlYlByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vV2Vi
QXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcAogV2ViUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlv
bi9XZWJBdXRoblByb2Nlc3NDb25uZWN0aW9uLmNwcAogCitXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1Nlc3Npb25TdGF0ZUNvbnZlcnNpb24uY3BwCiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1NoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5jcHAKIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNGMzMjk4ZTZlMGE5Njc0N2NlZjBh
MmJhMTEzNTM0M2NjMzNkMjFiYS4uM2ExMTcyY2JlZDJkYzIwYWQyNTE3NjRlMjJiNjA3NTI0Njc2
Y2MyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0xNDcxLDYgKzE0NzEsOSBAQAogCQk5MzA4NURERjI2RTVCQ0YxMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRTI2RTJFOTAyMDAwRUM2QTcgLyog
TmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmggKi87IH07CiAJCTkzMDg1REUw
MjZFNUJDRkQwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMDg1REM0MjZFMUJCQkQwMDBFQzZB
NyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIuaCAqLzsgfTsKIAkJOTMwODVERTEyNkU1QkQxMzAw
MEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURDRDI2RTJFOTAyMDAwRUM2QTcg
LyogTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKKwkJOTMxMkJBRDUyNkYz
M0MyNjAwRkRERjVGIC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTA3NTAyNkYwNjMxMDAwNDQ3NENE
IC8qIEZpbGVTeXN0ZW1TdG9yYWdlTWFuYWdlci5oICovOyB9OworCQk5MzEyQkFENjI2RjMzQzI5
MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZS5oICovOyB9OworCQk5MzFBMUJFMjI2Rjg3MDA5MDA4MUE3
RTUgLyogRmlsZVN5c3RlbVN0b3JhZ2VFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0
ZW1TdG9yYWdlRXJyb3IuaCAqLzsgfTsKIAkJOTMyMUQ1ODYxQTM4RUUzQzAwODA1MkJFIC8qIFdL
SW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJFIC8qIFdLSW1tZWRpYXRl
QWN0aW9uQ29udHJvbGxlci5oICovOyB9OwogCQk5MzIxRDU4QTFBMzhGMTk2MDA4MDUyQkUgLyog
V0tJbW1lZGlhdGVBY3Rpb25UeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0
aW9uVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk5MzIzNjExRTFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzIzNjEx
RDFCMDE1REE4MDBGQTkyMzIgLyogX1dLT3ZlcmxheVNjcm9sbGJhclN0eWxlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE0ODcsNiArMTQ5MCw3
IEBACiAJCTkzNTZGMkRGMjE1MkI3MjMwMEU2RDVERiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQkEwNERGMjE1
MUFERjQwMDdGNDU1RiAvKiBXZWJTV09yaWdpblN0b3JlLmNwcCAqLzsgfTsKIAkJOTM1NkYyRTAy
MTUyQjc1MjAwRTZENURGIC8qIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRERDIxNTFB
REYzMDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcCAqLzsgfTsK
IAkJOTM1NkYyRTEyMTUyQjc2NjAwRTZENURGIC8qIFdlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0JBMDRFMTIx
NTFBREY0MDA3RjQ1NUYgLyogV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJOTM1
QjU3OUEyNkY1MTkzMzAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUI1Nzk4
MjZGNTEyNzAwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmggKi87
IH07CiAJCTkzNUVFQjlCMTI3NzYxN0MwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlz
dEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk5MzVFRUI5
RjEyNzc2MUFDMDAzMzIyQjggLyogV0tCdW5kbGVCYWNrRm9yd2FyZExpc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUVFQjk2MTI3NzYxNkQwMDMz
MjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTkzNjhFRURFMjMwM0E5MDIwMEJEQjExQSAvKiBT
dG9yYWdlTWFuYWdlclNldE1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzY4RUVEQzIzMDNBOEQ4MDBCREIxMUEgLyogU3Rv
cmFnZU1hbmFnZXJTZXRNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwpAQCAtNDkzMSw2ICs0OTM1
LDE0IEBACiAJCTkzMDg1RENDMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFn
ZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTMwODVEQ0QyNkUyRTkwMjAwMEVDNkE3IC8qIE5ldHdvcmtTdG9y
YWdlTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5l
dHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTkzMDg1RENFMjZFMkU5MDIwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXJNZXNz
YWdlc1JlcGxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0
b3JhZ2VNYW5hZ2VyTWVzc2FnZXNSZXBsaWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzMUEwNzUwMjZGMDYzMTAwMDQ0NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5h
Z2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzUxMjZGMDYzMTAwMDQ0
NzRDRCAvKiBGaWxlU3lzdGVtU3RvcmFnZU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQTA3NTIyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0
ZW1TdG9yYWdlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMxQTA3NTMyNkYwNkFCNDAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRD
RCAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUEwNzU5MjZGMUI5NjcwMDQ0NzRDRCAvKiBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzFBMDc1QTI2RjFCOTY4MDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBG
aWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzMUExQkUwMjZGODVDMzIwMDgxQTdFNSAvKiBGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1TdG9yYWdlRXJyb3Iu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODUxQTM4RUUzQzAwODA1MkJF
IC8qIFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXS0ltbWVkaWF0ZUFjdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTMyMUQ1ODcxQTM4RUU3NDAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0
aW9uQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFdLSW1tZWRpYXRlQWN0aW9uQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJOTMyMUQ1ODkxQTM4RjE5NjAwODA1MkJFIC8qIFdLSW1tZWRpYXRlQWN0aW9uVHlwZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tJbW1lZGlhdGVBY3Rpb25UeXBl
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDk0NSw2ICs0OTU3LDggQEAKIAkJ
OTM0MjU4OEYyNTU1RENBNTAwNTlFRUREIC8qIE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGVybWlzc2lvblV0aWxpdGllcy5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM0MjU4OTgyNTVCNTM0QjAwNTlFRUREIC8qIE1lZGlh
UGVybWlzc2lvblV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZWRpYVBlcm1pc3Npb25VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTM0QjcyNDMxOUY1QjlCRTAwQUU5NkQ2IC8qIFdLQWN0aW9uTWVudUl0ZW1UeXBlcy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0FjdGlvbk1lbnVJdGVtVHlwZXMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZp
bGVTeXN0ZW1TdG9yYWdlSGFuZGxlUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzVCNTc5OTI2RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJOTM1RUVCOTUxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0Zv
cndhcmRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLQnVu
ZGxlQmFja0ZvcndhcmRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM1
RUVCOTYxMjc3NjE2RDAwMzMyMkI4IC8qIFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlQmFja0ZvcndhcmRMaXN0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzNUVFQjk3MTI3NzYxNkQwMDMzMjJCOCAvKiBX
S0J1bmRsZUJhY2tGb3J3YXJkTGlzdEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTk3MjksNiArOTc0MywxNCBAQAogCQk5MzA4NURDMjI2RTFCQjY1
MDAwRUM2QTcgLyogc3RvcmFnZSAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRy
ZW4gPSAoCisJCQkJOTMxQTFCRTAyNkY4NUMzMjAwODFBN0U1IC8qIEZpbGVTeXN0ZW1TdG9yYWdl
RXJyb3IuaCAqLywKKwkJCQk5MzFBMDc1MjI2RjA2QUI0MDA0NDc0Q0QgLyogRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGUuY3BwICovLAorCQkJCTkzMUEwNzUzMjZGMDZBQjQwMDQ0NzRDRCAvKiBGaWxl
U3lzdGVtU3RvcmFnZUhhbmRsZS5oICovLAorCQkJCTkzMUEwNzU3MjZGMTI1QTMwMDQ0NzRDRCAv
KiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50aWZpZXIuaCAqLywKKwkJCQk5MzVCNTc5OTI2
RjUxOTJGMDA4QjQ4QUMgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVSZWdpc3RyeS5jcHAgKi8s
CisJCQkJOTM1QjU3OTgyNkY1MTI3MDAwOEI0OEFDIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
UmVnaXN0cnkuaCAqLywKKwkJCQk5MzFBMDc1MTI2RjA2MzEwMDA0NDc0Q0QgLyogRmlsZVN5c3Rl
bVN0b3JhZ2VNYW5hZ2VyLmNwcCAqLywKKwkJCQk5MzFBMDc1MDI2RjA2MzEwMDA0NDc0Q0QgLyog
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggKi8sCiAJCQkJOTMwODVEQzMyNkUxQkJCRDAwMEVD
NkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5jcHAgKi8sCiAJCQkJOTMwODVEQzQyNkUxQkJC
RDAwMEVDNkE3IC8qIE5ldHdvcmtTdG9yYWdlTWFuYWdlci5oICovLAogCQkJCTkzMDg1REM3MjZF
MUM2RUUwMDBFQzZBNyAvKiBOZXR3b3JrU3RvcmFnZU1hbmFnZXIubWVzc2FnZXMuaW4gKi8sCkBA
IC0xMDA0NCw2ICsxMDA2Niw4IEBACiAJCQkJQ0Q2MTc4MTExRTZERTk4MDAwRkRBNTdEIC8qIGNv
Y29hICovLAogCQkJCTJEMjhGM0RGMTg4NUNDQjQwMDRCOUVBRSAvKiBpb3MgKi8sCiAJCQkJQkMx
MTFBREUxMTJGNUI5QTAwMzM3QkFCIC8qIG1hYyAqLywKKwkJCQk5MzFBMDc1OTI2RjFCOTY3MDA0
NDc0Q0QgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgKi8sCisJCQkJOTMxQTA3
NUEyNkYxQjk2ODAwNDQ3NENEIC8qIEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHkuaCAqLywK
IAkJCQkxQTcyODQ0NDE5NTlFRDEwMDAwN0JDRTUgLyogU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5j
cHAgKi8sCiAJCQkJMUE3Mjg0NDUxOTU5RUQxMDAwMDdCQ0U1IC8qIFNlc3Npb25TdGF0ZUNvbnZl
cnNpb24uaCAqLywKIAkJCQlGNDNBOUNERTI1RDcyRTJEMDA5OTBFMjYgLyogU2hhcmVhYmxlQml0
bWFwVXRpbGl0aWVzLmNwcCAqLywKQEAgLTEyMjIzLDYgKzEyMjQ3LDEwIEBACiAJCQkJMUFBNTc1
RkIxNDk2QjUyNjAwQTRFRTA2IC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNTcyRUJCRDcyNTM3RUJBRTAwMDU1MkIzIC8qIEV4dHJhUHJpdmF0ZVN5bWJvbHNGb3JUQVBJ
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1N0I4MjY0ODIzMDUwQzUxMDBCNzJFQjAgLyogRmlkb1Nl
cnZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMUExQkUyMjZGODcwMDkwMDgxQTdFNSAvKiBG
aWxlU3lzdGVtU3RvcmFnZUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENjI2RjMz
QzI5MDBGRERGNUYgLyogRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTkzNUI1NzlBMjZGNTE5MzMwMDhCNDhBQyAvKiBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVJl
Z2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzEyQkFENTI2RjMzQzI2MDBGRERGNUYgLyog
RmlsZVN5c3RlbVN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwMEI5NjYxQTE4
RTI1QUUxMDBDRTFGODggLyogRmluZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE5MEMx
RjQxMjY0RkQ3MTAwM0U0NEQ0IC8qIEZpbmRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlDNTlDNEE1OTE4QjgxMTc0MDA3QkRDQjYgLyogRm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbi5o
IGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94
eS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMDQ0ZmYzZTE4ZjY2YjhiMmJiNWE3YjJmYWNjZTg0NmEwMTUyODVk
YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmNwcApAQCAtMCwwICsxLDEzNyBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3Rv
cmFnZUhhbmRsZVByb3h5LmgiCisKKyNpbmNsdWRlICJGaWxlU3lzdGVtU3RvcmFnZUVycm9yLmgi
CisjaW5jbHVkZSAiTmV0d29ya1N0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRlIDxX
ZWJDb3JlL0V4Y2VwdGlvbk9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lzdGVtRmlsZUhhbmRsZS5oPgor
CituYW1lc3BhY2UgV2ViS2l0IHsKKworUmVmPEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk+
IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmNyZWF0ZShGaWxlU3lzdGVtU3RvcmFnZUhh
bmRsZUlkZW50aWZpZXIgaWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQor
eworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJveHko
aWRlbnRpZmllciwgY29ubmVjdGlvbikpOworfQorCitGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5OjpGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5KEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxl
SWRlbnRpZmllciBpZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCisgICAg
OiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKKyAgICAsIG1fY29ubmVjdGlvbigmY29ubmVjdGlv
bikKK3sKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5Ojpjb25uZWN0aW9u
Q2xvc2VkKCkKK3sKKyAgICBtX2Nvbm5lY3Rpb24gPSBudWxscHRyOworfQorCit2b2lkIEZpbGVT
eXN0ZW1TdG9yYWdlSGFuZGxlUHJveHk6OmlzU2FtZUVudHJ5KEZpbGVTeXN0ZW1IYW5kbGVJbXBs
JiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8Ym9v
bD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisg
ICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJD
b3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgYXV0byBp
ZGVudGlmaWVyID0gaGFuZGxlLnN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyKCk7CisgICAgaWYgKCFp
ZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworCisg
ICAgaWYgKG1faWRlbnRpZmllci50b1VJbnQ2NCgpID09ICppZGVudGlmaWVyKQorICAgICAgICBy
ZXR1cm4gY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpJc1NhbWVFbnRy
eShtX2lkZW50aWZpZXIsIG1ha2VPYmplY3RJZGVudGlmaWVyPEZpbGVTeXN0ZW1TdG9yYWdlSGFu
ZGxlSWRlbnRpZmllclR5cGU+KCppZGVudGlmaWVyKSksIFtjb21wbGV0aW9uSGFuZGxlciA9IFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShib29sIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKHJlc3VsdCk7CisgICAgfSk7Cit9CisKK3ZvaWQgRmlsZVN5c3Rl
bVN0b3JhZ2VIYW5kbGVQcm94eTo6Z2V0RmlsZUhhbmRsZShjb25zdCBTdHJpbmcmIG5hbWUsIGJv
b2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhj
ZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpVbmtub3duRXJy
b3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9uLT5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6R2V0RmlsZUhhbmRs
ZShtX2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW2Nvbm5lY3Rpb24gPSBt
X2Nvbm5lY3Rpb24sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisg
ICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsg
Y29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAg
IGF1dG8gaGFuZGxlSWRlbnRpZmllciA9IHJlc3VsdC52YWx1ZSgpOworICAgICAgICBpZiAoIWhh
bmRsZUlkZW50aWZpZXIuaXNWYWxpZCgpKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5l
Y3Rpb24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhh
bmRsZUltcGw+IGltcGwgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFu
ZGxlSWRlbnRpZmllciwgKmNvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihX
VEZNb3ZlKGltcGwpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRs
ZVByb3h5OjpnZXREaXJlY3RvcnlIYW5kbGUoY29uc3QgU3RyaW5nJiBuYW1lLCBib29sIGNyZWF0
ZUlmTmVjZXNzYXJ5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkV4Y2VwdGlvbk9y
PFJlZjxXZWJDb3JlOjpGaWxlU3lzdGVtSGFuZGxlSW1wbD4+JiYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29u
bmVjdGlvbiBpcyBsb3N0IiB9KTsKKworICAgIG1fY29ubmVjdGlvbi0+c2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OkdldERpcmVjdG9yeUhhbmRsZSht
X2lkZW50aWZpZXIsIG5hbWUsIGNyZWF0ZUlmTmVjZXNzYXJ5KSwgW2Nvbm5lY3Rpb24gPSBtX2Nv
bm5lY3Rpb24sIG5hbWUsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAg
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6RXhjZXB0aW9uIHsgY29u
dmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisgICAgCisgICAgICAgIGF1
dG8gaGFuZGxlSWRlbnRpZmllciA9IHJlc3VsdC52YWx1ZSgpOworICAgICAgICBpZiAoIWhhbmRs
ZUlkZW50aWZpZXIuaXNWYWxpZCgpKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IFdlYkNvcmU6OlVua25vd25FcnJvciwgIkNvbm5lY3Rp
b24gaXMgbG9zdCJfcyB9KTsKKworICAgICAgICBSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRs
ZUltcGw+IGltcGwgPSBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpjcmVhdGUoaGFuZGxl
SWRlbnRpZmllciwgKmNvbm5lY3Rpb24pOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZN
b3ZlKGltcGwpKTsKKyAgICB9KTsKK30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVBy
b3h5OjpyZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUsIGJvb2wgZGVsZXRlUmVjdXJzaXZl
bHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8dm9pZD4mJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCisgICAgICAg
IHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBXZWJDb3JlOjpV
bmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiIH0pOworCisgICAgbV9jb25uZWN0aW9u
LT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UmVt
b3ZlRW50cnkobV9pZGVudGlmaWVyLCBuYW1lLCBkZWxldGVSZWN1cnNpdmVseSksIFtjb21wbGV0
aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShhdXRvIGVycm9yKSBtdXRh
YmxlIHsKKyAgICAgICAgaWYgKGVycm9yKQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFdlYkNvcmU6OkV4Y2VwdGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUoZXJyb3Iu
dmFsdWUoKSkgfSk7CisKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICB9KTsK
K30KKwordm9pZCBGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5OjpyZXNvbHZlKEZpbGVTeXN0
ZW1IYW5kbGVJbXBsJiBoYW5kbGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhj
ZXB0aW9uT3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGlmICghbV9jb25uZWN0aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2Vi
Q29yZTo6RXhjZXB0aW9uIHsgV2ViQ29yZTo6VW5rbm93bkVycm9yLCAiQ29ubmVjdGlvbiBpcyBs
b3N0IiB9KTsKKworICAgIGF1dG8gaWRlbnRpZmllciA9IGhhbmRsZS5zdG9yYWdlSGFuZGxlSWRl
bnRpZmllcigpOworICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKFZlY3RvcjxTdHJpbmc+IHsgfSk7CisKKyAgICBtX2Nvbm5lY3Rpb24tPnNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VNYW5hZ2VyOjpSZXNvbHZlKG1f
aWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50aWZpZXI8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVJ
ZGVudGlmaWVyVHlwZT4oKmlkZW50aWZpZXIpKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8gcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYg
KCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6
RXhjZXB0aW9uIHsgY29udmVydFRvRXhjZXB0aW9uQ29kZShyZXN1bHQuZXJyb3IoKSkgfSk7CisK
KyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShyZXN1bHQudmFsdWUoKSkpOworICAg
IH0pOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L0ZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVt
U3RvcmFnZUhhbmRsZVByb3h5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2FjYzBmYmU1Y2Y2ZWFmN2U1YTNlNTI0
Y2I5NDE4OGJhMjI4NTgxZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9GaWxlU3lzdGVtU3RvcmFnZUhhbmRsZVByb3h5LmgKQEAgLTAs
MCArMSw2MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiRmlsZVN5
c3RlbVN0b3JhZ2VIYW5kbGVJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9GaWxlU3lz
dGVtSGFuZGxlSW1wbC5oPgorCituYW1lc3BhY2UgSVBDIHsKK2NsYXNzIENvbm5lY3Rpb247Cit9
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFzcyBFeGNlcHRp
b25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7CitjbGFzcyBGaWxlU3lzdGVt
RmlsZUhhbmRsZTsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIEZpbGVTeXN0ZW1T
dG9yYWdlSGFuZGxlUHJveHkgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRs
ZUltcGwgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQ
cm94eT4gY3JlYXRlKEZpbGVTeXN0ZW1TdG9yYWdlSGFuZGxlSWRlbnRpZmllciwgSVBDOjpDb25u
ZWN0aW9uJik7CisgICAgdm9pZCBjb25uZWN0aW9uQ2xvc2VkKCk7CisKK3ByaXZhdGU6CisgICAg
RmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eShGaWxlU3lzdGVtU3RvcmFnZUhhbmRsZUlkZW50
aWZpZXIsIElQQzo6Q29ubmVjdGlvbiYpOworCisgICAgLy8gRmlsZVN5c3RlbUhhbmRsZUltcGwK
KyAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBzdG9yYWdlSGFuZGxlSWRlbnRpZmllcigpIHsg
cmV0dXJuIG1faWRlbnRpZmllci50b1VJbnQ2NCgpOyB9CisgICAgdm9pZCBpc1NhbWVFbnRyeShG
aWxlU3lzdGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhj
ZXB0aW9uT3I8Ym9vbD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RmlsZUhhbmRsZShjb25z
dCBTdHJpbmcmIG5hbWUsIGJvb2wgY3JlYXRlSWZOZWNlc3NhcnksIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJ
bXBsPj4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgZ2V0RGlyZWN0b3J5SGFuZGxlKGNvbnN0IFN0
cmluZyYgbmFtZSwgYm9vbCBjcmVhdGVJZk5lY2Vzc2FyeSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJDb3JlOjpFeGNlcHRpb25PcjxSZWY8V2ViQ29yZTo6RmlsZVN5c3RlbUhhbmRsZUltcGw+
PiYmKT4mJikgZmluYWw7CisgICAgdm9pZCByZW1vdmVFbnRyeShjb25zdCBTdHJpbmcmIG5hbWUs
IGJvb2wgZGVsZXRlUmVjdXJzaXZlbHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpIGZpbmFsOworICAgIHZvaWQgcmVzb2x2ZShGaWxlU3lz
dGVtSGFuZGxlSW1wbCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0aW9u
T3I8VmVjdG9yPFN0cmluZz4+JiYpPiYmKSBmaW5hbDsKKworICAgIEZpbGVTeXN0ZW1TdG9yYWdl
SGFuZGxlSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgUmVmUHRyPElQQzo6Q29ubmVjdGlv
bj4gbV9jb25uZWN0aW9uOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5l
Y3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlN0
b3JhZ2VDb25uZWN0aW9uLmNwcAppbmRleCA4ODk1MDhhYTZjNzMzMjFjNDMzZGI1N2Q5MTE3M2U3
MDQ2ODdlNDFhLi4xNWE1OThlYTdmNTg3OGQ5NTBmMjY5NWJkYTI5OTE4NmFkYjQwOWZjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFn
ZUNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJTdG9yYWdlQ29ubmVjdGlvbi5oIgogCisjaW5jbHVk
ZSAiRmlsZVN5c3RlbVN0b3JhZ2VIYW5kbGVQcm94eS5oIgogI2luY2x1ZGUgIk5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlTWFuYWdlck1lc3NhZ2Vz
LmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgpAQCAtMzgsMTYgKzM5LDMxIEBAIFJlZjxXZWJT
dG9yYWdlQ29ubmVjdGlvbj4gV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNyZWF0ZSgpCiAgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgV2ViU3RvcmFnZUNvbm5lY3Rpb24pOwogfQogCi12b2lkIFdlYlN0
b3JhZ2VDb25uZWN0aW9uOjpwZXJzaXN0ZWQoV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYgb3JpZ2lu
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9p
ZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6Z2V0UGVyc2lzdGVkKGNvbnN0IFdlYkNvcmU6OkNsaWVu
dE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQogewogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVyc2lzdGVkKG9yaWdpbiksIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBXZWJTdG9yYWdlQ29ubmVjdGlvbjo6cGVyc2lz
dChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlN0b3JhZ2VDb25uZWN0aW9uOjpw
ZXJzaXN0KGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiYgb3JpZ2luLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGNvbm5lY3Rpb24o
KS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtTdG9yYWdlTWFuYWdlcjo6UGVy
c2lzdChvcmlnaW4pLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKK3ZvaWQgV2Vi
U3RvcmFnZUNvbm5lY3Rpb246OmZpbGVTeXN0ZW1HZXREaXJlY3RvcnkoY29uc3QgV2ViQ29yZTo6
Q2xpZW50T3JpZ2luJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhj
ZXB0aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgY29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKTsKKyAg
ICBjb25uZWN0aW9uLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1N0b3JhZ2VN
YW5hZ2VyOjpGaWxlU3lzdGVtR2V0RGlyZWN0b3J5KG9yaWdpbiksIFt3ZWFrQ29ubmVjdGlvbiA9
IG1ha2VXZWFrUHRyKGNvbm5lY3Rpb24pLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpXShhdXRvIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghcmVz
dWx0KQorICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OkV4Y2Vw
dGlvbiB7IGNvbnZlcnRUb0V4Y2VwdGlvbkNvZGUocmVzdWx0LmVycm9yKCkpIH0pOworCisgICAg
ICAgIGlmICghd2Vha0Nvbm5lY3Rpb24gfHwgIXJlc3VsdC52YWx1ZSgpLmlzVmFsaWQoKSkKKyAg
ICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpFeGNlcHRpb24geyBX
ZWJDb3JlOjpVbmtub3duRXJyb3IsICJDb25uZWN0aW9uIGlzIGxvc3QiX3MgfSk7CisKKyAgICAg
ICAgUmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPiBpbXBsID0gRmlsZVN5c3RlbVN0
b3JhZ2VIYW5kbGVQcm94eTo6Y3JlYXRlKHJlc3VsdC52YWx1ZSgpLCAqd2Vha0Nvbm5lY3Rpb24p
OworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShpbXBsKSk7CisgICAg
fSk7Cit9CisKIElQQzo6Q29ubmVjdGlvbiYgV2ViU3RvcmFnZUNvbm5lY3Rpb246OmNvbm5lY3Rp
b24oKQogewogICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3Jr
UHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViU3RvcmFnZUNvbm5lY3Rpb24uaCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlv
bi5oCmluZGV4IDFjMGU2NjM2OWI1NmVkYjcwZTkzYTg4OWUzMjUwMzU2NjY5MzM2ZTUuLmZmMjc4
ZDk1ZTVjY2ZmNmE0NDZlNDI5MDJkNmZmZmU1YTllOTBmN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJTdG9yYWdlQ29u
bmVjdGlvbi5oCkBAIC0zMSw2ICszMSwxMSBAQCBuYW1lc3BhY2UgSVBDIHsKIGNsYXNzIENvbm5l
Y3Rpb247CiB9CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK3RlbXBsYXRlPHR5cGVuYW1lPiBjbGFz
cyBFeGNlcHRpb25PcjsKK2NsYXNzIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGU7Cit9CisKIG5h
bWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJTdG9yYWdlQ29ubmVjdGlvbiBmaW5hbCA6IHB1
YmxpYyBXZWJDb3JlOjpTdG9yYWdlQ29ubmVjdGlvbiB7CkBAIC0zOCw4ICs0Myw5IEBAIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPFdlYlN0b3JhZ2VDb25uZWN0aW9uPiBjcmVhdGUoKTsKIAogcHJp
dmF0ZToKLSAgICB2b2lkIHBlcnNpc3RlZChXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJikgZmluYWw7Ci0gICAgdm9pZCBwZXJzaXN0KFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5h
bDsKKyAgICB2b2lkIGdldFBlcnNpc3RlZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKKyAgICB2b2lkIHBlcnNpc3Qo
Y29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
KT4mJikgZmluYWw7CisgICAgdm9pZCBmaWxlU3lzdGVtR2V0RGlyZWN0b3J5KGNvbnN0IFdlYkNv
cmU6OkNsaWVudE9yaWdpbiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6RXhjZXB0
aW9uT3I8UmVmPFdlYkNvcmU6OkZpbGVTeXN0ZW1IYW5kbGVJbXBsPj4mJik+JiYpIGZpbmFsOwog
CiAgICAgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKCk7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDRkMWI2YWI3
MjAwMjMyZDNlZGJhODhjYzcwNTFiMzY3NzlkMzNlNDcuLjRhNmM0MmQ4M2YxMzEwNWYwNDQwYmE4
ZjYzM2VjZWM2ZmJiYjMwMDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMS0wOS0yMyAgU2lo
dWkgTGl1ICA8c2lodWlfbGl1QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaW5pdGlhbCBzdXBw
b3J0IGZvciBGaWxlIFN5c3RlbSBBY2Nlc3MgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzA0ODQKKyAgICAgICAgcmRhcjovLzgzNDA1ODkwCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICAqIFRlc3RFeHBl
Y3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAg
ICAgICogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2Rp
cmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWw6IEFkZGVkLgorCiAyMDIxLTA5LTIzICBBeXVtaSBL
b2ppbWEgIDxheXVtaV9rb2ppbWFAYXBwbGUuY29tPgogCiAgICAgICAgIFsgbWFjT1Mgd2sxIERl
YnVnIF0gZWRpdGluZy9zZWxlY3Rpb24vbmF2aWdhdGlvbi1jbGVhcnMtZWRpdG9yLXN0YXRlLmh0
bWwgaXMgYSBmbGFreSBjcmFzaC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDE4
NDU0ZWVlODQ4NmE1MTc1NmFkNThjZjMyNDU4NjdiNzMwZGM5YmUuLmY3NzQ2M2U3YTVjZjBkMjMz
Njg3MDE2Mjg3NTRjYTFkNmZmZjk3NzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM0IEBACisyMDIxLTA5LTIzICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUu
Y29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIEZpbGUgU3lzdGVtIEFjY2Vz
cyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
MDQ4NAorICAgICAgICByZGFyOi8vODM0MDU4OTAKKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vl
bm4gRmFibGV0LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9vcGFxdWUtb3JpZ2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFj
Y2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1NZXNzYWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2Fn
ZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13b3JrZXJzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBz
LmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3Rv
cnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlLWl0ZXJhdGlvbi5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29sdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hl
ZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRl
ZC13b3JrZXIuaHR0cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1X
cml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0OgorCiAyMDIx
LTA5LTIyICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0NvY29hXSBIb29rIHVwIHBhbGV0dGVzIHRvIENvcmVUZXh0CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpp
bmRleCA5Y2JiZjAwM2E1ZDVmY2EzYjRhMWIxOWZjNWIxM2ZiMzZmNTM0YjU4Li5hM2VkNmIxNGNj
M2U4Zjc1MGI4Zjg2YTljMTExYjNjNGU0NDNjOTI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIw
MCw2ICsyMDAsNyBAQCBmYXN0L3NwZWVjaHJlY29nbml0aW9uL2lvcy8gWyBTa2lwIF0KIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcGVybWlzc2lvbnMvIFsgU2tpcCBdCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0b3JhZ2UvIFsgU2tpcCBdCiBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy8gWyBTa2lwIF0KK3N0b3JhZ2Uv
ZmlsZXN5c3RlbWFjY2Vzcy8gWyBTa2lwIF0KIAogIyBhcHAtcHJpdmFjeS1yZXBvcnQgdGVzdHMg
cmVseSBvbiBXZWJLaXRBZGRpdGlvbnMKIGh0dHAvdGVzdHMvYXBwLXByaXZhY3ktcmVwb3J0LyBb
IFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
aWxlLXN5c3RlbS1hY2Nlc3Mvb3BhcXVlLW9yaWdpbi5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CmluZGV4IDY5MGQyNzkzNDJlNmE4ZDk0OTk2OTFiMTlmNWNkOTY2NGJiNDAwOTYuLjFiNGRjOGI2
ZGE4MjZkNWRmMjNlN2ZhODk3ZmQxZWE2NzNiNGVkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL29wYXF1
ZS1vcmlnaW4uaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9vcGFxdWUtb3Jp
Z2luLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTIsNSArMiw1IEBACiBQQVNTIHNob3dE
aXJlY3RvcnlQaWNrZXIoKSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0YSBVUkkgaWZyYW1lcy4K
IFBBU1MgRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSBtdXN0IGJlIHVuZGVmaW5lZCBmb3IgZGF0
YSBVUkkgaWZyYW1lcy4KIEZBSUwgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCkgYW5k
IHNob3dEaXJlY3RvcnlQaWNrZXIoKSBtdXN0IHJlamVjdCBpbiBhIHNhbmRib3hlZCBpZnJhbWUu
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVE
OiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElP
TjogVHlwZUVycm9yIgotRkFJTCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKSBhbmQg
c2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3
aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzaG93RGlyZWN0b3J5UGlja2VyKCk6IFJF
SkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJl
Y3RvcnkoKTogUkVKRUNURUQ6IE5vdFN1cHBvcnRlZEVycm9yIgorRkFJTCBuYXZpZ2F0b3Iuc3Rv
cmFnZS5nZXREaXJlY3RvcnkoKSBhbmQgc2hvd0RpcmVjdG9yeVBpY2tlcigpIG11c3QgcmVqZWN0
IGluIGEgc2FuZGJveGVkIG9wZW5lZCB3aW5kb3cuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJz
aG93RGlyZWN0b3J5UGlja2VyKCk6IFJFSkVDVEVEOiBTZWN1cml0eUVycm9yIiBidXQgZ290ICJz
aG93RGlyZWN0b3J5UGlja2VyKCk6IEVYQ0VQVElPTjogVHlwZUVycm9yIgogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5kZXhlZERCLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtSW5k
ZXhlZERCLmh0dHBzLmFueS1leHBlY3RlZC50eHQKaW5kZXggNDEyNGI3YmU0ZGNkYWFkNGFiOTMw
NzlkYjJkYzBkZTFjMzI3MmViNC4uMjE1YWI2NjBiZDA0YmViZWI2NTRmODJmMzZlYTEzMzdlMGIw
MmE3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLUlu
ZGV4ZWREQi5odHRwcy5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxl
U3lzdGVtQmFzZUhhbmRsZS1JbmRleGVkREIuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw3
ICsxLDcgQEAKIAotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20g
cGVuZGluZyB0cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgU3RvcmUgaGFuZGxlIGluIEluZGV4ZWREQiBhbmQgcmVhZCBmcm9tIG5ldyB0cmFuc2FjdGlv
bi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU3RvcmUgaGFuZGxlcyBh
bmQgYmxvYnMgaW4gSW5kZXhlZERCLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5k
ZXhlZERCIHVzaW5nIGlubGluZSBrZXlzLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgorRkFJTCBTdG9yZSBoYW5kbGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gcGVuZGluZyB0
cmFuc2FjdGlvbi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5k
bGUgaW4gSW5kZXhlZERCIGFuZCByZWFkIGZyb20gbmV3IHRyYW5zYWN0aW9uLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZXMgYW5kIGJsb2JzIGluIEluZGV4
ZWREQi4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBTdG9yZSBoYW5kbGUgaW4g
SW5kZXhlZERCIGFuZCByZWFkIHVzaW5nIGEgY3Vyc29yLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIFN0b3JlIGhhbmRsZSBpbiBJbmRleGVkREIgdXNpbmcgaW5saW5lIGtleXMu
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLWlzU2FtZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0
cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA4MTVlNzVmNjMyZDRlZmNjOGQ2YjIxOTM0MzJiYTBj
Y2ZkOTE0NDM4Li44MzdlYWUxMDYyOGVkZjkzZjE3NTY4Y2I5MjMwYmEyY2I4ZDMzNWM2IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtaXNTYW1lRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtaXNTYW1lRW50cnkuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMCArMSwx
MCBAQAogCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZGlyZWN0b3J5IGhhbmRsZXMg
cmV0dXJucyB0cnVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGlzU2Ft
ZUVudHJ5IGZvciBkaWZmZXJlbnQgZGlyZWN0b3JpZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGhh
bmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBpc1NhbWVFbnRyeSBmb3IgaWRlbnRpY2FsIGZpbGUgaGFuZGxlcyByZXR1cm5z
IHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXNTYW1lRW50cnkg
Zm9yIGRpZmZlcmVudCBmaWxlcyByZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3IgdGhl
IHNhbWUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1NhbWVF
bnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZmlsZSBpbiBhIGRpZmZlcmVudCBkaXJlY3Rvcnkg
cmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBpc1Nh
bWVFbnRyeSBjb21wYXJpbmcgYSBmaWxlIHRvIGEgZGlyZWN0b3J5IHJldHVybnMgZmFsc2UgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgaXNTYW1lRW50cnkgZm9yIGlkZW50
aWNhbCBkaXJlY3RvcnkgaGFuZGxlcyByZXR1cm5zIHRydWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBmb3IgZGlmZmVyZW50IGRpcmVjdG9yaWVzIHJldHVy
bnMgZmFsc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpc1NhbWVFbnRyeSBm
b3IgZGlmZmVyZW50IGhhbmRsZXMgZm9yIHRoZSBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBpZGVudGljYWwgZmlsZSBoYW5k
bGVzIHJldHVybnMgdHJ1ZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2Ft
ZUVudHJ5IGZvciBkaWZmZXJlbnQgZmlsZXMgcmV0dXJucyBmYWxzZSBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVudHJ5IGZvciBkaWZmZXJlbnQgaGFuZGxlcyBmb3Ig
dGhlIHNhbWUgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
ZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGlzU2FtZUVu
dHJ5IGNvbXBhcmluZyBhIGZpbGUgdG8gYSBmaWxlIGluIGEgZGlmZmVyZW50IGRpcmVjdG9yeSBy
ZXR1cm5zIGZhbHNlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgaXNTYW1lRW50
cnkgY29tcGFyaW5nIGEgZmlsZSB0byBhIGRpcmVjdG9yeSByZXR1cm5zIGZhbHNlIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0
TWVzc2FnZS1Ccm9hZGNhc3RDaGFubmVsLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXgg
ZTNjYTdjNDY4ODI1MGY0NDcxNTg2NTIyYTg4OWNkZWFmZWZkMWY4NC4uMzk1ZWNhNTU0YmRkN2I4
YWIwMjJlZDUyYzkyZDQ0MzFkYzEyYTNjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0Zp
bGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLUJyb2FkY2FzdENoYW5uZWwuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5k
bGUtcG9zdE1lc3NhZ2UtQnJvYWRjYXN0Q2hhbm5lbC5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcg
YSBicm9hZGNhc3QgY2hhbm5lbCBpbiBhbiBpZnJhbWUsIGRlZGljYXRlZCB3b3JrZXIgYW5kIHNl
cnZpY2Ugd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYnJvYWRjYXN0IGNoYW5uZWwgaW4gYW4gaWZy
YW1lLCBkZWRpY2F0ZWQgd29ya2VyIGFuZCBzZXJ2aWNlIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJh
c2VIYW5kbGUtcG9zdE1lc3NhZ2UtRXJyb3IuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNj
ZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDdhZjQxMTgzMWRjMGZiNmNiMjY1Yjg0M2IyYjBj
ZWY3MDNhMDA0YzMuLjRiMWM1YmUzYjc3ZDhmN2I2MzA0NmY5YTBhMTJkZWE2YzQ4Mjg4MTUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2Fn
ZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1FcnJvci5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgY3Jvc3Mgb3JpZ2luIG1lc3NhZ2UgcG9ydCBpbiBhbiBpZnJhbWUuIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCB0byBhIHNhbmRib3hlZCBp
ZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2Vu
ZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBhIHNhbmRib3hlZCBpZnJhbWUuIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdl
cyB0byBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEgZGF0
YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWls
IHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gd2luZG93
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNlbmQgYW5k
IHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBwb3J0IGluIGEg
d2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBGYWlsIHRvIHNl
bmQgbWVzc2FnZXMgdG8gIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IHRvIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKK0ZBSUwgRmFpbCB0byBzZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgY3Jvc3Mg
b3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWlsIHRv
IHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmlnaW4gbWVzc2FnZSBw
b3J0IGluIGFuIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBGYWls
IHRvIHNlbmQgdG8gYSBzYW5kYm94ZWQgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCB0byBh
IHNhbmRib3hlZCBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFp
bCB0byBzZW5kIG1lc3NhZ2VzIHRvIGEgZGF0YSBVUkkgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1
ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlz
IHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2VuZCBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2Ug
cG9ydCBpbiBhIGRhdGEgVVJJIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgor
RkFJTCBGYWlsIHRvIHNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBjcm9zcyBvcmln
aW4gd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIEZhaWwgdG8gc2Vu
ZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGNyb3NzIG9yaWdpbiBtZXNzYWdlIHBvcnQg
aW4gYSB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBz
ZW5kIG1lc3NhZ2VzIHRvICBhIHNhbmRib3hlZCB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgRmFpbCB0byBzZW5kIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0
IHRvIGEgc2FuZGJveGVkIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zp
bGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3Nh
Z2UtTWVzc2FnZVBvcnQtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9z
YW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtZnJh
bWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNTNlOTBlMjNjNDkxZjU4OGQxYjVi
NmViZWMyMTIyZDdhY2NlODA2Yi4uODIxYzYxYzlmNGYxZWE0ZmIxNWNlMTExZDlmYzJmNzA2YTBi
YmM0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNz
YWdlUG9ydC1mcmFtZXMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAK
IAotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGlu
IGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGEg
c2FuZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9y
dCBpbiBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBwb3J0IGluIGFuIGlm
cmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIFNlbmQg
YW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzYW1lIG9yaWdp
biBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbmRib3hlZCBzYW1lIG9y
aWdpbiBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2IgaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2Fn
ZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3Rl
bUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RN
ZXNzYWdlLU1lc3NhZ2VQb3J0LXdpbmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRl
eCBlNWRlYzA4YTk1M2NhNDA2ZTFhNGY1OThkZDhlNDRmMGFhNzk3N2I1Li5hOTM4NDdkMDAzNWIz
YmY3ZWFiNTU5ZTA0ODA0NWQwNmNiMDZiNTgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtTWVzc2FnZVBvcnQtd2luZG93cy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFz
ZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdlUG9ydC13aW5kb3dzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdl
cyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2lu
ZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVz
c2FnZSBwb3J0IGluIGEgYmxvYiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBh
IHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0t
YWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1NZXNzYWdl
UG9ydC13b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNDUxMDY1ZTMyMmRh
ZmUwNGJlYWUyMTQ5ZTUxNDBhYTY1YzM2ZjcwZC4uODFmNmY2MTA3ZjRhZmZhMTljMzg4ZWUxY2M4
ZDA0YjFhM2Q4NGVkZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNl
SGFuZGxlLXBvc3RNZXNzYWdlLU1lc3NhZ2VQb3J0LXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1l
c3NhZ2UtTWVzc2FnZVBvcnQtd29ya2Vycy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNz
YWdlIHBvcnQgaW4gYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgbWVzc2FnZSBw
b3J0IGluIGEgc2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQi
Ci1GQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4g
YSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
U2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIGRlZGlj
YXRlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQg
cmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIG1lc3NhZ2UgcG9ydCBpbiBhIHNlcnZpY2Ugd29ya2Vy
LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygp
JywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVz
c2FnZXMgdXNpbmcgYSBtZXNzYWdlIHBvcnQgaW4gYSBzaGFyZWQgIHdvcmtlci4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJhbWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lz
dGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2UtZnJh
bWVzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggODY0NWQ5M2VlNTcyMTU3OWJiOWVm
YzUyODI0NjQ0NDk3MjVjMTNlNy4uM2NlOWU4MzIyMGVkZDJiYmZhNzQ2ZDRjZWIyOTRkNjcwYTdk
NWM1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBv
c3RNZXNzYWdlLWZyYW1lcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3Nh
bmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS1mcmFtZXMuaHR0cHMud2lu
ZG93LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBTZW5kIGFuZCByZWNlaXZl
IG1lc3NhZ2VzIHVzaW5nIGEgc2FtZSBvcmlnaW4gaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2Fu
ZGJveGVkIHNhbWUgb3JpZ2luIGlmcmFtZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBhIGJsb2IgaWZyYW1lLiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RT
dXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1l
c3NhZ2VzIHVzaW5nIGFuIGlmcmFtZSBzcmNkb2MuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCitGQUlMIFNlbmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzYW1lIG9yaWdp
biBpZnJhbWUuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIu
dmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiBpZnJhbWUuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIGJsb2IgaWZyYW1lLiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYW4gaWZyYW1lIHNyY2RvYy4gcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5
c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdp
bmRvd3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBmMDk1OTk1ODk2M2YyZjRkNmE5
N2U4YTdiYTczNzRmYjUxZTgyZDRmLi42ZDk2MjY1ODQxOThiZTkwNzgxZWZjOTdiMWQwZmRjOGZi
MWY4YTg2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUt
cG9zdE1lc3NhZ2Utd2luZG93cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13aW5kb3dzLmh0dHBz
LndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU2VuZCBhbmQgcmVj
ZWl2ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1c2luZyBh
IGJsb2Igd2luZG93LiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5k
IGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2FuZGJveGVkIHNhbWUgb3JpZ2luIHdpbmRv
dy4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIHNhbWUgb3JpZ2luIHdpbmRvdy4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgYmxvYiB3
aW5kb3cuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2
ZSBtZXNzYWdlcyB1c2luZyBhIHNhbmRib3hlZCBzYW1lIG9yaWdpbiB3aW5kb3cuIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVT
eXN0ZW1CYXNlSGFuZGxlLXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1wb3N0TWVzc2FnZS13
b3JrZXJzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNzJmZjNmNTc0MTJkZDA4ZWM2
YTRiZjNjMDVmYzM2OGI4OWFmYWE2Ni4uMjRiNDZkZDU5YWNhMDc5MDRmZDY3Yjk5MTFmNzA3MDZh
ZDlhMjRiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXBvc3RNZXNzYWdlLXdvcmtlcnMuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vz
cy9zYW5kYm94ZWRfRmlsZVN5c3RlbUJhc2VIYW5kbGUtcG9zdE1lc3NhZ2Utd29ya2Vycy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFNlbmQgYW5kIHJl
Y2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBkZWRpY2F0ZWQgd29ya2VyLiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjog
Tm90IGltcGxlbWVudGVkIgotRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEg
c2VydmljZSB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFNl
bmQgYW5kIHJlY2VpdmUgbWVzc2FnZXMgdXNpbmcgYSBzaGFyZWQgd29ya2VyLiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVz
aW5nIGEgZGVkaWNhdGVkIHdvcmtlci4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBTZW5kIGFuZCByZWNlaXZlIG1lc3NhZ2VzIHVzaW5nIGEgc2VydmljZSB3b3JrZXIuIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgU2VuZCBhbmQgcmVjZWl2ZSBtZXNzYWdlcyB1
c2luZyBhIHNoYXJlZCB3b3JrZXIuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxl
LXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxlLXJlbW92ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1CYXNlSGFuZGxl
LXJlbW92ZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IDRjYTBmOTQ3MTBjOGUzZTA1Zjk1
YTA3NDcwOWNkODdhMDdiMjg1N2QuLjdlNjYxY2UwZjc5MzRmNjkzZDI2ZjM5MTdlMDc2ODQwZTcx
Y2RmOWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtQmFzZUhhbmRsZS1y
ZW1vdmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5
c3RlbUJhc2VIYW5kbGUtcmVtb3ZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5
IEBACiAKLUZBSUwgcmVtb3ZlKCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUoKSBvbiBhbiBhbHJlYWR5IHJlbW92ZWQgZmlsZSBz
aG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmUo
KSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBkaXJlY3Rvcnkgc2hv
dWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlKCkg
b24gYSBub24tZW1wdHkgZGlyZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3Qg
aW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNo
b3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmUoKSBvbiBhIGZpbGUgc2hvdWxkIGlnbm9yZSB0aGUgcmVjdXJzaXZlIG9w
dGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgorRkFJTCByZW1vdmUoKSB0byBy
ZW1vdmUgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkg
b24gYW4gYWxyZWFkeSByZW1vdmVkIGZpbGUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCByZW1vdmUoKSB0byByZW1vdmUgYW4gZW1wdHkgZGlyZWN0b3J5IHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAn
ZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlKCkgb24gYW4gYWxyZWFkeSBy
ZW1vdmVkIGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIHJlbW92ZSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFpbCBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZGlyZWN0b3J5IHJl
Y3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIHJlbW92ZSgpIG9uIGEgZmlsZSBzaG91bGQgaWdub3JlIHRoZSByZWN1
cnNpdmUgb3B0aW9uIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdk
aXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RGlyZWN0b3J5SGFu
ZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApp
bmRleCAxZmM0NzQ4MDYyM2VhYjkzYmM5NmE5MzEwYTdjNTY2M2Y4NTg4MjMwLi43ODE3MWZmMGU0
ODc4ZWI0ODk5MDE1MDljZWI0NTgzZDg1N2E2Njg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94
ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZS1nZXREaXJlY3RvcnlIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMiAr
MSwxMiBAQAogCi1GQUlMIGdldERpcmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJlamVjdHMg
Zm9yIG5vbi1leGlzdGluZyBkaXJlY3RvcmllcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVu
dGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIGNyZWF0ZXMgYW4gZW1w
dHkgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERp
cmVjdG9yeUhhbmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxl
KGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGRpcmVjdG9yaWVzIHdpdGhvdXQgZXJhc2lu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXREaXJlY3RvcnlIYW5k
bGUoKSB3aGVuIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1lIG5hbWUgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0
aCBlbXB0eSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGdldERp
cmVjdG9yeUhhbmRsZSgpIHdpdGggIi4iIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1m
YWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4gdGhlIGRpcmVjdG9yeSBleGlzdHMgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNy
ZWF0ZT10cnVlKSB3aXRoIGEgcGF0aCBzZXBhcmF0b3IgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmVqZWN0cyBm
b3Igbm9uLWV4aXN0aW5nIGRpcmVjdG9yaWVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGRp
cmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhh
bmRsZShjcmVhdGU9ZmFsc2UpIHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUp
IHJldHVybnMgZXhpc3RpbmcgZGlyZWN0b3JpZXMgd2l0aG91dCBlcmFzaW5nIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2hlbiBhIGZpbGUg
YWxyZWFkeSBleGlzdHMgd2l0aCB0aGUgc2FtZSBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCBlbXB0eSBuYW1lIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
ZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZh
bHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0RGlyZWN0b3J5SGFuZGxlKCkgd2l0aCAiLiIg
bmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldERpcmVjdG9yeUhhbmRs
ZSgpIHdpdGggIi4uIiBuYW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgZ2V0
RGlyZWN0b3J5SGFuZGxlKGNyZWF0ZT1mYWxzZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9yIHdoZW4g
dGhlIGRpcmVjdG9yeSBleGlzdHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXREaXJlY3RvcnlIYW5kbGUoY3JlYXRlPXRydWUpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVIYW5kbGUuaHR0cHMuYW55LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLWdldEZpbGVI
YW5kbGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCAzMzZlNGRjNzM5MWIwODNmZDA0YWJi
ODE2NGJmMjYwYjBjZWQxNWQ4Li5hZTU1ZDEzNGQyNzQyNWUwN2NhMWM4NmZhNjdhNmZkNGNlODdm
NTRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS1nZXRGaWxlSGFuZGxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtZ2V0RmlsZUhhbmRsZS5odHRwcy5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0xLDEzICsxLDEzIEBACiAKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9
ZmFsc2UpIHJlamVjdHMgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT10cnVlKSBjcmVhdGVzIGFu
IGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0ZT1mYWxzZSkgcmV0dXJucyBleGlz
dGluZyBmaWxlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxl
SGFuZGxlKGNyZWF0ZT10cnVlKSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHdpdGhvdXQgZXJhc2lu
ZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKGNy
ZWF0ZT1mYWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBzYW1l
IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRs
ZShjcmVhdGU9dHJ1ZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRoZSBz
YW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhh
bmRsZSgpIHdpdGggZW1wdHkgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGlt
cGxlbWVudGVkIgotRkFJTCBnZXRGaWxlSGFuZGxlKCkgd2l0aCAiLi4iIG5hbWUgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVk
RXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9ZmFsc2Up
IHdpdGggYSBwYXRoIHNlcGFyYXRvciB3aGVuIHRoZSBmaWxlIGV4aXN0cy4gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0
aCBhIHBhdGggc2VwYXJhdG9yIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlM
IGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSByZWplY3RzIGZvciBub24tZXhpc3RpbmcgZmls
ZXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFuZGxlKGNyZWF0
ZT10cnVlKSBjcmVhdGVzIGFuIGVtcHR5IGZpbGUgZm9yIG5vbi1leGlzdGluZyBmaWxlcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNl
KSByZXR1cm5zIGV4aXN0aW5nIGZpbGVzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgcmV0dXJucyBleGlzdGluZyBmaWxlcyB3aXRo
b3V0IGVyYXNpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT1mYWxzZSkgd2hlbiBhIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyB3aXRoIHRo
ZSBzYW1lIG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBnZXRGaWxlSGFu
ZGxlKGNyZWF0ZT10cnVlKSB3aGVuIGEgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzIHdpdGggdGhl
IHNhbWUgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGly
LnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5k
bGUoKSB3aXRoIGVtcHR5IG5hbWUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBn
ZXRGaWxlSGFuZGxlKCkgd2l0aCAiLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGdldEZpbGVIYW5kbGUoKSB3aXRoICIuLiIgbmFtZSBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGdldEZpbGVIYW5kbGUoY3JlYXRlPWZhbHNlKSB3aXRoIGEgcGF0aCBz
ZXBhcmF0b3Igd2hlbiB0aGUgZmlsZSBleGlzdHMuIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgZ2V0RmlsZUhhbmRsZShjcmVhdGU9dHJ1ZSkgd2l0aCBhIHBhdGggc2VwYXJhdG9y
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCkn
LCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtaXRlcmF0aW9uLmh0dHBzLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUt
c3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRp
b24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAppbmRleCA5MmJhMDA2MWMxMTJkYjk5YTY5NmMwM2Zi
NGFiMGE4NzEwYWIzYmUxLi5mZTFmZmE5YzQ1YmY3ODkxOGM2OGJkODEyMjlkNzJlZTAzMDZhNGM1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1p
dGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1pdGVyYXRpb24uaHR0cHMuYW55LWV4cGVjdGVkLnR4dApA
QCAtMSw4ICsxLDggQEAKIAotRkFJTCByZXR1cm5pbmcgZWFybHkgZnJvbSBhbiBpdGVyYXRpb24g
ZG9lc24ndCBjcmFzaCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBAQGFz
eW5jSXRlcmF0b3I6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGVudHJpZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHZhbHVlczogZnVsbCBpdGVyYXRpb24gd29ya3Mg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwga2V5czogZnVsbCBpdGVyYXRp
b24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgaXRlcmF0aW9u
IHdoaWxlIGl0ZXJhdG9yIGdldHMgZ2FyYmFnZSBjb2xsZWN0ZWQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmV0dXJuaW5nIGVhcmx5IGZyb20gYW4gaXRlcmF0aW9uIGRv
ZXNuJ3QgY3Jhc2ggcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rp
ci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBAQGFzeW5jSXRl
cmF0b3I6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgZW50cmllczogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgorRkFJTCB2YWx1ZXM6IGZ1bGwgaXRlcmF0aW9uIHdvcmtzIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZh
bHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycg
aXMgdW5kZWZpbmVkKSIKK0ZBSUwga2V5czogZnVsbCBpdGVyYXRpb24gd29ya3MgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBpdGVyYXRpb24gd2hpbGUgaXRlcmF0b3IgZ2V0cyBn
YXJiYWdlIGNvbGxlY3RlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZS1yZW1vdmVFbnRyeS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGFjNmZj
MTk0ODQ3OWMxN2Q5OGIwMzhiNzQ3ZDZiOTMwNmRiYzA5MmMuLjI4MTQ3MjI1YmRhODQ5MjhkYzMy
Njc2NDEwMGE0OWZmZGEyYmMwMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLXJlbW92ZUVudHJ5Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVtb3ZlRW50cnku
aHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSwxMSBAQAogCi1GQUlMIHJlbW92ZUVu
dHJ5KCkgdG8gcmVtb3ZlIGEgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgot
RkFJTCByZW1vdmVFbnRyeSgpIG9uIGFuIGFscmVhZHkgcmVtb3ZlZCBmaWxlIHNob3VsZCBmYWls
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHJlbW92ZUVudHJ5KCkgdG8g
cmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVk
IgotRkFJTCByZW1vdmVFbnRyeSgpIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSBzaG91bGQgZmFp
bCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJO
b3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIG9u
IGEgZGlyZWN0b3J5IHJlY3Vyc2l2ZWx5IHNob3VsZCBkZWxldGUgYWxsIHN1Yi1pdGVtcyBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBw
b3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRyeSgpIHdpdGggZW1w
dHkgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJ
TCByZW1vdmVFbnRyeSgpIHdpdGggIi4iIG5hbWUgc2hvdWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgcmVtb3ZlRW50cnkoKSB3aXRoICIuLiIgbmFtZSBzaG91
bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCByZW1vdmVFbnRy
eSgpIHdpdGggYSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKK0ZBSUwgcmVtb3ZlRW50cnkoKSB0byByZW1vdmUgYSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVtb3ZlRW50cnkoKSBvbiBhbiBhbHJlYWR5
IHJlbW92ZWQgZmlsZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHJlbW92ZUVudHJ5KCkgdG8gcmVtb3ZlIGFuIGVtcHR5IGRpcmVjdG9yeSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgb24gYSBub24tZW1wdHkgZGly
ZWN0b3J5IHNob3VsZCBmYWlsIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgcmVt
b3ZlRW50cnkoKSBvbiBhIGRpcmVjdG9yeSByZWN1cnNpdmVseSBzaG91bGQgZGVsZXRlIGFsbCBz
dWItaXRlbXMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgp
IHdpdGggZW1wdHkgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLiIgbmFtZSBzaG91bGQgZmFpbCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHJlbW92ZUVudHJ5KCkgd2l0aCAiLi4iIG5hbWUgc2hv
dWxkIGZhaWwgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCByZW1vdmVFbnRyeSgp
IHdpdGggYSBwYXRoIHNlcGFyYXRvciBzaG91bGQgZmFpbC4gcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRl
ZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRf
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS1yZXNvbHZlLmh0dHBzLmFueS1leHBlY3RlZC50eHQK
aW5kZXggNTU3MWYxMWQxY2YwMGQxMzllZmE5ZjhkYzZlOGM0MmMwYjFiMzM0MC4uZjVlNjUxYjFl
ZjFjN2YxMTk1YzZhNTdhMDcyNzM2NDIyNzEzYzI2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJv
eGVkX0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUtcmVzb2x2ZS5odHRwcy5hbnktZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmls
ZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLXJlc29s
dmUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBSZXNvbHZl
IHJldHVybnMgZW1wdHkgYXJyYXkgZm9yIHNhbWUgZGlyZWN0b3J5IHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBO
b3QgaW1wbGVtZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgUmVzb2x2ZSByZXR1cm5zIGNvcnJlY3Qg
cGF0aCB3aXRoIG5vbi1hc2NpaSBjaGFyYWN0ZXJzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIFJlc29sdmUgcmV0dXJucyBudWxsIHdoZW4gZW50cnkgaXMgbm90IGEgY2hp
bGQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgUmVzb2x2ZSByZXR1cm5z
IGVtcHR5IGFycmF5IGZvciBzYW1lIGRpcmVjdG9yeSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5l
ZCkiCitGQUlMIFJlc29sdmUgcmV0dXJucyBjb3JyZWN0IHBhdGggcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCBSZXNvbHZlIHJldHVybnMgY29ycmVjdCBwYXRoIHdpdGggbm9uLWFz
Y2lpIGNoYXJhY3RlcnMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBSZXNvbHZl
IHJldHVybnMgbnVsbCB3aGVuIGVudHJ5IGlzIG5vdCBhIGNoaWxkIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVl
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMg
dW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxl
SGFuZGxlLWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50
ZW50YXRpdmUud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVt
RmlsZUhhbmRsZS1jcmVhdGUtc3luYy1hY2Nlc3MtaGFuZGxlLWRlZGljYXRlZC13b3JrZXIuaHR0
cHMudGVudGF0aXZlLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMzMwMTBkNzE4NDUyMmJiMzcw
NWViMzhiNzM0YTNmYTBkMjY4NjZmYy4uM2I4YzBkOGRhYjAxODBlOTIzYzQ0Mzk3ZjY0MWM2NWRj
YWU3ZmQ5MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxl
LWNyZWF0ZS1zeW5jLWFjY2Vzcy1oYW5kbGUtZGVkaWNhdGVkLXdvcmtlci5odHRwcy50ZW50YXRp
dmUud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZp
bGVIYW5kbGUtY3JlYXRlLXN5bmMtYWNjZXNzLWhhbmRsZS1kZWRpY2F0ZWQtd29ya2VyLmh0dHBz
LnRlbnRhdGl2ZS53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIEF0
dGVtcHQgdG8gY3JlYXRlIGEgc3luYyBhY2Nlc3MgaGFuZGxlLiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgorRkFJTCBBdHRlbXB0IHRvIGNyZWF0ZSBhIHN5bmMgYWNjZXNzIGhhbmRs
ZS4gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5k
Ym94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnktZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1GaWxlSGFuZGxlLWdldEZpbGUuaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAppbmRleCA5Y2YwMTlkMjU2OWNmZjQ5OGMxMDRmMTVjN2FmYWRhMWMxOTdh
NmM3Li5mN2MxNzA3M2FlZWZmOWFhZjBiNzI4Y2NiZTJhYjhlMWRkNjFhNTc4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbUZpbGVIYW5kbGUtZ2V0RmlsZS5odHRwcy5hbnkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtRmlsZUhhbmRsZS1n
ZXRGaWxlLmh0dHBzLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKLUZBSUwgZ2V0
RmlsZSgpIHByb3ZpZGVzIGEgZmlsZSB0aGF0IGNhbiBiZSBzbGljZWQgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6
IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0
aW1lIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
Ik5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIGdldEZpbGUoKSBwcm92
aWRlcyBhIGZpbGUgdGhhdCBjYW4gYmUgc2xpY2VkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVk
KSIKK0ZBSUwgZ2V0RmlsZSgpIHJldHVybnMgbGFzdCBtb2RpZmllZCB0aW1lIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGly
LnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVl
cycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0
ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNz
L3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXBpcGVkLmh0dHBzLmFueS1l
eHBlY3RlZC50eHQKaW5kZXggYTA2OTI2NjFkZDIzZDEwYzA5ZmZkNTllNmRiZTBiMGM4ZTJjNjBi
YS4uZDE1MjZjNTk5NTg2NjI1ZjMxNmE3Njc5OGY3MDE3NDhiODQ2ZmVlMCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1h
Y2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0tcGlwZWQuaHR0cHMu
YW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxl
RmlsZVN0cmVhbS1waXBlZC5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEwICsxLDEwIEBA
CiAKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5v
dCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGggYW4gQXJyYXlCdWZmZXIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90
U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY2FuIGJlIHBpcGVkIHRvIHdp
dGggYSBCbG9iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNhbiBiZSBw
aXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29tbWFuZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBjYW4gYmUgcGlwZWQgdG8gd2l0aCBhIHBhcmFt
IG9iamVjdCB3aXRoIG11bHRpcGxlIGNvbW1hbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIG11bHRpcGxlIG9wZXJhdGlvbnMgY2FuIGJlIHF1ZXVlZCBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9y
dGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYWJvcnQoKSBhYm9ydHMgd3JpdGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3Vw
cG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwgY2FuIGJlIHBpcGVkIHRvIHdpdGgg
YSBzdHJpbmcgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52
YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjYW4gYmUgcGlwZWQg
dG8gd2l0aCBhbiBBcnJheUJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgQmxvYiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCki
CitGQUlMIGNhbiBiZSBwaXBlZCB0byB3aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggd3JpdGUgY29t
bWFuZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNhbiBiZSBwaXBlZCB0byB3
aXRoIGEgcGFyYW0gb2JqZWN0IHdpdGggbXVsdGlwbGUgY29tbWFuZHMgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFs
dWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBp
cyB1bmRlZmluZWQpIgorRkFJTCBtdWx0aXBsZSBvcGVyYXRpb25zIGNhbiBiZSBxdWV1ZWQgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBwbGF5cyB3ZWxsIHdpdGggZmV0Y2ggcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhYm9ydCgpIGFib3J0cyB3cml0ZSBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rp
ci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9G
aWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRlLmh0dHBzLmFueS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZpbGUtc3lzdGVt
LWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmlsZVN0cmVhbS13cml0ZS5odHRw
cy5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGY5N2U4MTJkNzcyYTY1NTE1N2E1ZGFjZWZjMTM1ZmMw
NjZiMGEyMmMuLjM3ZjdhNjRhZTlhNWYwMWRkZDg3ZjRhY2RhODc5YTU0YjY2NjQ4ZTggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1z
eXN0ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLXdyaXRl
Lmh0dHBzLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1X
cml0YWJsZUZpbGVTdHJlYW0td3JpdGUuaHR0cHMuYW55LWV4cGVjdGVkLnR4dApAQCAtMSwzMSAr
MSwzMSBAQAogCi1GQUlMIHdyaXRlKCkgd2l0aCBhbiBlbXB0eSBibG9iIHRvIGFuIGVtcHR5IGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBhIGJsb2Ig
dG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMgd2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxl
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5v
dFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBzdHJpbmcg
dG8gYW4gZW1wdHkgZmlsZSB3aXRoIHplcm8gb2Zmc2V0IHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgd2l0aCB6ZXJv
IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNh
bGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBzdHJpbmcg
YXBwZW5kcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIFdy
aXRlUGFyYW1zIHdpdGhvdXQgcG9zaXRpb24gYW5kIGJsb2IgYXBwZW5kcyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJv
cjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEgc3RyaW5nIGFu
ZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIGNhbGxlZCB3aXRoIGEgYmxvYiBhbmQgYSB2YWxpZCBvZmZzZXQgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJy
b3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSBjYWxsZWQgd2l0aCBhbiBvZmZzZXQg
YmV5b25kIHRoZSBlbmQgb2YgdGhlIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRl
ZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1
cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlk
IHV0Zi04IHN0cmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0
ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB1bml4IGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0
ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0
aCB3aW5kb3dzIGxpbmUgZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxl
bWVudGVkIgotRkFJTCB3cml0ZSgpIHdpdGggYW4gZW1wdHkgYXJyYXkgYnVmZmVyIHRvIGFuIGVt
cHR5IGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3
aXRoIGEgdmFsaWQgdHlwZWQgYXJyYXkgYnVmZmVyIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVt
ZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGly
ZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
YXRvbWljIHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW1zIG1ha2UgYXRvbWljIGNoYW5nZXMg
b24gY2xvc2UgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdy
aXRlczogd3JpdGUoKSBhZnRlciBjbG9zZSgpIGZhaWxzIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1w
bGVtZW50ZWQiCi1GQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRlKCkgYWZ0ZXIgY2xvc2UoKSBm
YWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBhdG9taWMgd3JpdGVz
OiBjbG9zZSgpIGFmdGVyIGNsb3NlKCkgZmFpbHMgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1l
bnRlZCIKLUZBSUwgYXRvbWljIHdyaXRlczogb25seSBvbmUgY2xvc2UoKSBvcGVyYXRpb24gbWF5
IHN1Y2NlZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgYXRvbWljIHdy
aXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwgZXZlbiBp
ZiBmaWxlIGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwg
Z2V0V3JpdGVyKCkgY2FuIGJlIHVzZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIK
LUZBSUwgV3JpdGVQYXJhbXM6IHRydW5jYXRlIG1pc3Npbmcgc2l6ZSBwYXJhbSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRF
cnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBk
YXRhIHBhcmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIFdyaXRlUGFy
YW1zOiBzZWVrIG1pc3NpbmcgcG9zaXRpb24gcGFyYW0gcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBs
ZW1lbnRlZCIKLUZBSUwgd3JpdGUoKSB3aXRoIGFuIGludmFsaWQgYmxvYiB0byBhbiBlbXB0eSBm
aWxlIHNob3VsZCByZWplY3QgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKK0ZBSUwg
d3JpdGUoKSB3aXRoIGFuIGVtcHR5IGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgYSBibG9iIHRvIGFuIGVtcHR5IGZpbGUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdk
aXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggV3JpdGVQYXJhbXMg
d2l0aG91dCBwb3NpdGlvbiB0byBhbiBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZp
bmVkKSIKK0ZBSUwgd3JpdGUoKSBhIHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBv
ZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1
ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGEgYmxvYiB0
byBhbiBlbXB0eSBmaWxlIHdpdGggemVybyBvZmZzZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCBjb25zZWN1dGl2ZWx5IGFwcGVuZHMgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIFdyaXRlUGFyYW1zIHdpdGhvdXQgcG9z
aXRpb24gYW5kIHN0cmluZyBhcHBlbmRzIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZB
SUwgd3JpdGUoKSBXcml0ZVBhcmFtcyB3aXRob3V0IHBvc2l0aW9uIGFuZCBibG9iIGFwcGVuZHMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIGNhbGxlZCB3aXRoIGEg
c3RyaW5nIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYSBibG9iIGFuZCBhIHZhbGlkIG9mZnNldCBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52
YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgY2FsbGVkIHdpdGggYW4gb2Zmc2V0
IGJleW9uZCB0aGUgZW5kIG9mIHRoZSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIK
K0ZBSUwgd3JpdGUoKSB3aXRoIGFuIGVtcHR5IHN0cmluZyB0byBhbiBlbXB0eSBmaWxlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGly
LnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEgdmFsaWQgdXRmLTgg
c3RyaW5nIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFs
dWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSB3aXRoIGEg
c3RyaW5nIHdpdGggdW5peCBsaW5lIGVuZGluZyBwcmVzZXJ2ZWQgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVz
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1
bmRlZmluZWQpIgorRkFJTCB3cml0ZSgpIHdpdGggYSBzdHJpbmcgd2l0aCB3aW5kb3dzIGxpbmUg
ZW5kaW5nIHByZXNlcnZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRl
KCkgd2l0aCBhbiBlbXB0eSBhcnJheSBidWZmZXIgdG8gYW4gZW1wdHkgZmlsZSBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRp
ci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1
ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHdyaXRlKCkgd2l0aCBhIHZhbGlkIHR5cGVkIGFycmF5
IGJ1ZmZlciBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZh
bHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6
IGNsb3NlKCkgZmFpbHMgd2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBk
aXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFs
dWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBhdG9taWMgd3JpdGVzOiB3cml0YWJsZSBmaWxlIHN0
cmVhbXMgbWFrZSBhdG9taWMgY2hhbmdlcyBvbiBjbG9zZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVm
aW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHdyaXRlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IHRydW5jYXRl
KCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IGF0b21pYyB3cml0ZXM6IGNsb3NlKCkgYWZ0ZXIgY2xvc2UoKSBmYWlscyBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52
YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMn
IGlzIHVuZGVmaW5lZCkiCitGQUlMIGF0b21pYyB3cml0ZXM6IG9ubHkgb25lIGNsb3NlKCkgb3Bl
cmF0aW9uIG1heSBzdWNjZWVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgYXRv
bWljIHdyaXRlczogd3JpdGFibGUgZmlsZSBzdHJlYW0gcGVyc2lzdHMgZmlsZSBvbiBjbG9zZSwg
ZXZlbiBpZiBmaWxlIGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJ
TCBnZXRXcml0ZXIoKSBjYW4gYmUgdXNlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitG
QUlMIFdyaXRlUGFyYW1zOiB0cnVuY2F0ZSBtaXNzaW5nIHNpemUgcGFyYW0gcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIu
dmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVz
JyBpcyB1bmRlZmluZWQpIgorRkFJTCBXcml0ZVBhcmFtczogd3JpdGUgbWlzc2luZyBkYXRhIHBh
cmFtIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKK0ZBSUwgV3JpdGVQYXJhbXM6IHNlZWsg
bWlzc2luZyBwb3NpdGlvbiBwYXJhbSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlM
IHdyaXRlKCkgd2l0aCBhbiBpbnZhbGlkIGJsb2IgdG8gYW4gZW1wdHkgZmlsZSBzaG91bGQgcmVq
ZWN0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogZGlyLnZhbHVlcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVz
KCknLCAnZGlyLnZhbHVlcycgaXMgdW5kZWZpbmVkKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3RlbS1hY2Nlc3Mvc2Fu
ZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmlsZS1zeXN0
ZW0tYWNjZXNzL3NhbmRib3hlZF9GaWxlU3lzdGVtV3JpdGFibGVGaWxlU3RyZWFtLmh0dHBzLmFu
eS1leHBlY3RlZC50eHQKaW5kZXggNTAwOTI1NGE0ZjEwZTI3OTNiZDY0Yzg0MTk1NTkyNDUyMTJm
MmQxMS4uZTM4NTFmY2EzM2U0YzlkODM5NjE5MWI2ZDFkYmFlYWNmMGRhMzg5NCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9maWxlLXN5c3Rl
bS1hY2Nlc3Mvc2FuZGJveGVkX0ZpbGVTeXN0ZW1Xcml0YWJsZUZpbGVTdHJlYW0uaHR0cHMuYW55
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZpbGUtc3lzdGVtLWFjY2Vzcy9zYW5kYm94ZWRfRmlsZVN5c3RlbVdyaXRhYmxlRmls
ZVN0cmVhbS5odHRwcy5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEyIEBACiAKLUZBSUwg
dHJ1bmNhdGUoKSB0byBzaHJpbmsgYSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50
ZWQiCi1GQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZpbGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBp
bXBsZW1lbnRlZCIKLUZBSUwgY3JlYXRlV3JpdGFibGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJl
Y3RvcnkgaXMgcmVtb3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90IGltcGxlbWVudGVkIgotRkFJTCB3
cml0ZSgpIGZhaWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIHRydW5jYXRlKCkgZmFpbHMgd2hlbiBwYXJlbnQg
ZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiTm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZB
SUwgY3JlYXRlV3JpdGFibGUoe2tlZXBFeGlzdGluZ0RhdGE6IHRydWV9KTogYXRvbWljIHdyaXRh
YmxlIGZpbGUgc3RyZWFtIGluaXRpYWxpemVkIHdpdGggc291cmNlIGNvbnRlbnRzIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRl
ZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGNyZWF0ZVdyaXRhYmxlKHtrZWVwRXhpc3Rp
bmdEYXRhOiBmYWxzZX0pOiBhdG9taWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQg
d2l0aCBlbXB0eSBmaWxlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVycm9yOiBOb3QgaW1wbGVtZW50ZWQiCi1GQUlMIGN1
cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJOb3RTdXBwb3J0ZWRFcnJvcjogTm90
IGltcGxlbWVudGVkIgotRkFJTCBjdXJzb3IgcG9zaXRpb246IHRydW5jYXRlIHNpemUgPCBvZmZz
ZXQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
Tm90U3VwcG9ydGVkRXJyb3I6IE5vdCBpbXBsZW1lbnRlZCIKLUZBSUwgY29tbWFuZHMgYXJlIHF1
ZXVlZCwgc3RyZWFtIGlzIHVubG9ja2VkIGFmdGVyIGVhY2ggb3BlcmF0aW9uIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIk5vdFN1cHBvcnRlZEVy
cm9yOiBOb3QgaW1wbGVtZW50ZWQiCitGQUlMIHRydW5jYXRlKCkgdG8gc2hyaW5rIGEgZmlsZSBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgdG8gZ3JvdyBhIGZp
bGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMo
KScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSgpIGZh
aWxzIHdoZW4gcGFyZW50IGRpcmVjdG9yeSBpcyByZW1vdmVkIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogZGlyLnZhbHVlcyBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdkaXIudmFsdWVzKCknLCAnZGlyLnZhbHVlcycgaXMgdW5k
ZWZpbmVkKSIKK0ZBSUwgd3JpdGUoKSBmYWlscyB3aGVuIHBhcmVudCBkaXJlY3RvcnkgaXMgcmVt
b3ZlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVl
cygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIHRydW5jYXRlKCkgZmFpbHMg
d2hlbiBwYXJlbnQgZGlyZWN0b3J5IGlzIHJlbW92ZWQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQg
cmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBkaXIudmFsdWVzIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScsICdkaXIudmFsdWVzJyBpcyB1bmRlZmlu
ZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4aXN0aW5nRGF0YTogdHJ1ZX0pOiBhdG9t
aWMgd3JpdGFibGUgZmlsZSBzdHJlYW0gaW5pdGlhbGl6ZWQgd2l0aCBzb3VyY2UgY29udGVudHMg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBkaXIudmFsdWVzIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Rpci52YWx1ZXMoKScs
ICdkaXIudmFsdWVzJyBpcyB1bmRlZmluZWQpIgorRkFJTCBjcmVhdGVXcml0YWJsZSh7a2VlcEV4
aXN0aW5nRGF0YTogZmFsc2V9KTogYXRvbWljIHdyaXRhYmxlIGZpbGUgc3RyZWFtIGluaXRpYWxp
emVkIHdpdGggZW1wdHkgZmlsZSBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGN1
cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA+IG9mZnNldCBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCitGQUlMIGN1cnNvciBwb3NpdGlvbjogdHJ1bmNhdGUgc2l6ZSA8IG9mZnNldCBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGRpci52YWx1ZXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywg
J2Rpci52YWx1ZXMnIGlzIHVuZGVmaW5lZCkiCitGQUlMIGNvbW1hbmRzIGFyZSBxdWV1ZWQsIHN0
cmVhbSBpcyB1bmxvY2tlZCBhZnRlciBlYWNoIG9wZXJhdGlvbiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGRpci52YWx1ZXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnZGlyLnZhbHVlcygpJywgJ2Rpci52YWx1ZXMnIGlzIHVu
ZGVmaW5lZCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggZDIxZGVkNTQ5OTZlN2YwYWNjODgwNmZhN2U3ZTlhMjdlN2NmY2U0Ni4uZDhkY2ViZTQ4NzEw
MjMwOTM0NTNhZmFmYjhmM2QyNzJiZGY5M2Y2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTg2NCwzICs4NjQsNSBAQCBmdWxsc2NyZWVuL2Z1bGwtc2Ny
ZWVuLWVudGVyLXdoaWxlLWV4aXRpbmcuaHRtbCBbIFBhc3MgXQogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9wZXJtaXNzaW9ucy8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc3RvcmFnZS8gWyBQYXNzIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvZmlsZS1zeXN0ZW0tYWNjZXNzLyBbIFBhc3MgXQorc3RvcmFnZS9maWxlc3lzdGVtYWNj
ZXNzLyBbIFBhc3MgXQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0
ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRsZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iZWVmN2I2ZWM3Y2RiMGE2ZTEzMjEzMDliYWZmMDVlOTQ5NDEx
YmZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNj
ZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIwIEBA
CitUaGlzIHRlc3QgY2hlY2tzIGJhc2ljIGZ1bnRpb25hbGl0aWVzIG9mIEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJvb3RI
YW5kbGUubmFtZSBpcyAiIgorUEFTUyByb290SGFuZGxlLmtpbmQgaXMgImRpcmVjdG9yeSIKK1BB
U1MgZGlySGFuZGxlLm5hbWUgaXMgImRpciIKK1BBU1MgZGlySGFuZGxlLmtpbmQgaXMgImRpcmVj
dG9yeSIKK1BBU1MgaXNTYW1lRW50cnkgaXMgZmFsc2UKK1BBU1MgZmlsZUhhbmRsZS5uYW1lIGlz
ICJmaWxlIgorUEFTUyBmaWxlSGFuZGxlLmtpbmQgaXMgImZpbGUiCitQQVNTIGhhbmRsZU5hbWVz
Lmxlbmd0aCBpcyAyCitQQVNTIGhhbmRsZU5hbWVzWzBdIGlzICJkaXIiCitQQVNTIGhhbmRsZU5h
bWVzWzFdIGlzICJmaWxlIgorUEFTUyBjcmVhdGVFcnJvci50b1N0cmluZygpIGlzICJOb3RGb3Vu
ZEVycm9yOiBUaGUgb2JqZWN0IGNhbiBub3QgYmUgZm91bmQgaGVyZS4iCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc3RvcmFnZS9maWxlc3lzdGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0
bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2ZpbGVzeXN0ZW1hY2Nlc3MvZGlyZWN0b3J5LWhhbmRs
ZS1iYXNpY3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MzczZDg2ZTM3ZWVkODUxNGY0Mzc2MzRlZmQ0ZTMw
YThmODBmZGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9maWxlc3lz
dGVtYWNjZXNzL2RpcmVjdG9yeS1oYW5kbGUtYmFzaWNzLmh0bWwKQEAgLTAsMCArMSwxMDAgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Citk
ZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyBiYXNpYyBmdW50aW9uYWxpdGllcyBvZiBGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlLiIpOworCit2YXIgcm9vdEhhbmRsZSwgZGlySGFuZGxlLCBm
aWxlSGFuZGxlLCBpc1NhbWVFbnRyeSwgaGFuZGxlTmFtZXMsIGNyZWF0ZUVycm9yOworCitmdW5j
dGlvbiBmaW5pc2hUZXN0KGVycm9yKQoreworICAgIGlmIChlcnJvcikgeworICAgICAgICB0ZXN0
RmFpbGVkKGVycm9yKTsKKyAgICB9CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9u
IGdldERpcmVjdG9yeSgpIHsKKyAgICBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKS50
aGVuKChoYW5kbGUpID0+IHsKKyAgICAgICAgcm9vdEhhbmRsZSA9IGhhbmRsZTsKKyAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyb290SGFuZGxlLm5hbWUiLCAiIik7CisgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicm9vdEhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAg
ICAgICBjcmVhdGVEaXJlY3RvcnlIYW5kbGUocm9vdEhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVy
cm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5j
dGlvbiBjcmVhdGVEaXJlY3RvcnlIYW5kbGUoZnJvbUhhbmRsZSkgeworICAgIGZyb21IYW5kbGUu
Z2V0RGlyZWN0b3J5SGFuZGxlKCJkaXIiLCB7ICJjcmVhdGUiIDogdHJ1ZSB9KS50aGVuKChoYW5k
bGUpID0+IHsKKyAgICAgICAgZGlySGFuZGxlID0gaGFuZGxlOworICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImRpckhhbmRsZS5uYW1lIiwgImRpciIpOworICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImRpckhhbmRsZS5raW5kIiwgImRpcmVjdG9yeSIpOworICAgICAgICBjaGVj
a0lmU2FtZUVudHJ5KHJvb3RIYW5kbGUsIGRpckhhbmRsZSk7CisgICAgfSkuY2F0Y2goKGVycm9y
KSA9PiB7CisgICAgICAgIGZpbmlzaFRlc3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlv
biBjaGVja0lmU2FtZUVudHJ5KGhhbmRsZTEsIGhhbmRsZTIpCit7CisgICAgaGFuZGxlMS5pc1Nh
bWVFbnRyeShoYW5kbGUyKS50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgaXNTYW1lRW50cnkg
PSByZXN1bHQ7CisgICAgICAgIHNob3VsZEJlRmFsc2UoImlzU2FtZUVudHJ5Iik7CisgICAgICAg
IGNyZWF0ZUZpbGVIYW5kbGUoZGlySGFuZGxlLCB0cnVlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9u
IGNyZWF0ZUZpbGVIYW5kbGUoZnJvbUhhbmRsZSwgY3JlYXRlKSB7CisgICAgbGV0IG9wdGlvbnMg
PSB7ICJjcmVhdGUiIDogY3JlYXRlIH07CisgICAgZnJvbUhhbmRsZS5nZXRGaWxlSGFuZGxlKCJm
aWxlIiwgb3B0aW9ucykudGhlbigoaGFuZGxlKSA9PiB7CisgICAgICAgIGZpbGVIYW5kbGUgPSBo
YW5kbGU7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZmlsZUhhbmRsZS5uYW1lIiwg
ImZpbGUiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJmaWxlSGFuZGxlLmtpbmQi
LCAiZmlsZSIpOworICAgICAgICByZXNvbHZlUGF0aCgpOworICAgIH0pLmNhdGNoKChlcnJvcikg
PT4geworICAgICAgICBpZiAoY3JlYXRlKSB7CisgICAgICAgICAgICBmaW5pc2hUZXN0KGVycm9y
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBjcmVhdGVFcnJvciA9
IGVycm9yOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImNyZWF0ZUVycm9yLnRvU3Ry
aW5nKCkiLCAiTm90Rm91bmRFcnJvcjogVGhlIG9iamVjdCBjYW4gbm90IGJlIGZvdW5kIGhlcmUu
Iik7CisgICAgICAgIGZpbmlzaFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gcmVzb2x2
ZVBhdGgoKSB7CisgICAgcm9vdEhhbmRsZS5yZXNvbHZlKGZpbGVIYW5kbGUpLnRoZW4oKHJlc3Vs
dCkgPT4geworICAgICAgICBoYW5kbGVOYW1lcyA9IHJlc3VsdDsKKyAgICAgICAgc2hvdWxkQmUo
ImhhbmRsZU5hbWVzLmxlbmd0aCIsICIyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiaGFuZGxlTmFtZXNbMF0iLCAiZGlyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiaGFuZGxlTmFtZXNbMV0iLCAiZmlsZSIpOworICAgICAgICByZW1vdmVFbnRyeShkaXJIYW5k
bGUsICJmaWxlIik7CisgICAgfSkuY2F0Y2goKGVycm9yKSA9PiB7CisgICAgICAgIGZpbmlzaFRl
c3QoZXJyb3IpOworICAgIH0pOworfQorCitmdW5jdGlvbiByZW1vdmVFbnRyeShmcm9tSGFuZGxl
LCBuYW1lKSB7CisgICAgZnJvbUhhbmRsZS5yZW1vdmVFbnRyeShuYW1lKS50aGVuKChyZXN1bHQp
ID0+IHsKKyAgICAgICAgLy8gTm8gZXJyb3IgbWVhbnMgaXQgaXMgcmVtb3ZlZC4KKyAgICAgICAg
Y3JlYXRlRmlsZUhhbmRsZShkaXJIYW5kbGUsIGZhbHNlKTsKKyAgICB9KS5jYXRjaCgoZXJyb3Ip
ID0+IHsKKyAgICAgICAgZmluaXNoVGVzdChlcnJvcik7CisgICAgfSk7Cit9CisKK2lmICh3aW5k
b3cudGVzdFJ1bm5lcikgeworICAgIGpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGdldERpcmVj
dG9yeSgpOworfSBlbHNlIHsKKyAgICBmaW5pc2hUZXN0KCJ3aW5kb3cudGVzdFJ1bm5lciBpcyBu
b3QgYXZhaWxhYmxlIik7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>